Unit test frameworks are dime-a-dozen. For C programmers, there are libraries like cmocha and cunit. When we first developed the sxe project at Sophos, about 5 years ago, the choices were much more limited. Most of the alternatives, like cppunit, required working in C++. But a few members of the team had worked on the Tank project, which used FreeBSD as the operating system and a FreeBSD library, libtap, for unit tests. We began to use it to test sxe, then enhanced it to make testing event driven software a lot easier.
libtap version 2 has long been available on sourceforge.com (as libtap2), and, as part of sxe on github.com. Yesterday, I took the latest version from sxe and got it building as a stand-alone library on Linux with baker (also available on github.com). You can get it here: https://github.com/jimbelton/libtap. I also made an extensive update to the documentation, which is available on the project wiki: https://github.com/jimbelton/libtap/wiki