• Stars
    star
    579
  • Rank 77,126 (Top 2 %)
  • Language
    C
  • License
    Other
  • Created almost 9 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

µnit is a small testing framework for C

µnit

µnit is a small but full-featured unit testing framework for C. It has no dependencies (beyond libc), is permissively licensed (MIT), and is easy to include into any project.

For more information, see the µnit web site.

Build status Windows build status

Features

Features µnit currently includes include:

  • Handy assertion macros which make for nice error messages.
  • Reproducible cross-platform random number generation, including support for supplying a seed via CLI.
  • Timing of both wall-clock and CPU time.
  • Parameterized tests.
  • Nested test suites.
  • Flexible CLI.
  • Forking (except on Windows).
  • Hiding output of successful tests.

Features µnit does not currently include, but some day may include (a.k.a., if you file a PR…), include:

Include into your project with meson

In your subprojects folder put a munit.wrap file containing:

[wrap-git]
directory=munit
url=https://github.com/nemequ/munit/
revision=head

Then you can use a subproject fallback when you include munit as a dependency to your project: dependency('munit', fallback: ['munit', 'munit_dep'])

Documentation

See the µnit web site.

Additionally, there is a heavily-commented example.c in the repository.

More Repositories

1

hedley

A C/C++ header to help move #ifdefs out of your code
C++
706
star
2

portable-snippets

Collection of miscellaneous portable C snippets.
C
606
star
3

configure-cmake

Autotools-style configure script wrapper around CMake
83
star
4

icc-travis

Directions for installing ICC compiler on Travis CI
Shell
49
star
5

vala-extra-vapis

This repository is no longer active; please use https://gitlab.gnome.org/GNOME/vala-extra-vapis instead.
Vala
43
star
6

salieri

Source-code annotation language (SAL) compatibility header
C++
39
star
7

lzo

Unofficial mirror of LZO
C
36
star
8

vala-girs

Collection of GIRs and VAPIs for the Vala toolchain
Vala
28
star
9

liblzf

Git mirror of the liblzf CVS repository.
C
21
star
10

compfuzz

Fuzzing compression libraries
C
19
star
11

gnome-cmake

CMake modules for various GNOME components
CMake
17
star
12

pgi-travis

Install PGI Community Edition on Travis CI
Shell
16
star
13

pre-defined-macros

Lists of pre-defined macros for various C/C++ compilers
C
16
star
14

squash-corpus

Designing a new corpus for lossless general-purpose compression
15
star
15

wav

Type-safe C/C++ API for WASM SIMD.
C
12
star
16

lzjb

LZJB implementation forked from FreeBSD
C
10
star
17

lzmat

git mirror of LZMAT (http://www.matcode.com/lzmat.htm)
C
7
star
18

ftdi-eeprom

Tool for writing to the EEPROM of FTDI devices.
C
6
star
19

bump

Concurrency management for GObject/GIO based projects, especially those written in Vala.
Vala
6
star
20

bzip2

NO LONGER ACTIVE; please use the new official bzip2 repository at https://gitlab.com/federicomenaquintero/bzip2. This was an unofficial mirror of bzip2, including the historical releases I could find.
C
5
star
21

wasm-simd-data

Performance data for WASM SIMD instructions.
C
5
star
22

doboz

git mirror of https://bitbucket.org/attila_afra/doboz
C
5
star
23

sqlheavy

Automatically exported from code.google.com/p/sqlheavy
Vala
4
star
24

nemequ.github.io

HTML
3
star
25

lz4x

An optimized LZ4 compressor
C
3
star
26

attic

Miscellaneous code I don't (yet?) have a better place for but don't want to throw away.
C++
3
star
27

tornado

Unofficial mirror of Tornado
C++
2
star
28

waspr

WebAssembly SIMD Programming Reference
TypeScript
2
star
29

ti-compiler-install-travis

Script to install Texas Instruments' compilers on Travis CI
Shell
2
star
30

safe-math

Portable overflow-safe math. Moved into https://github.com/nemequ/portable-snippets
C
2
star
31

ci-noise

Commits I want to test in CI without generateing noise in other repos. Project will completely change depending on what needs testing.
C
1
star
32

ternarylogic-compiler-test

C++
1
star
33

planet-vala

Configuration for Planet Vala
1
star