CppSpec: BDD framework for C++.
To define the behavior of a class, the user needs to create specifications for different states of the class. This is done by deriving from the CppSpec::Specification class. Using the expect method, the expectations for the behavior are specified. Basic validation routines include "should.be.empty()", "not should.be.empty()" and "context().count(), should.equal(1)".
CppSpec handles exception testing using executable blocks that are expected to throw an exception. An executable block is defined by deriving from Block and implementing the run() method. Users can take advantage of local, anonymous classes for building blocks. You can specify that the context should contain unique items or sequences using the contain keyword. Regular expressions can be used to specify context using the "should.contain(pattern)" and "should.match(pattern)" methods.
CppSpec is compiled using cmake (www.cmake.org) and native C++ toolchain. The pre-requisites for CppSpec are Boost headers and CppUTest. The latter is essential for executing CppSpec's own tests. If the user does not have it and is not interested in running the tests, they can remove the test directory from the main level CMakeLists.txt. In case CMake can't find the necessary libraries, the user can add their locations manually or use environment variables.
The latest release features greatly improved failure messages, a CUTE logger for use with the CUTE Eclipse plugin, improved specification execution time measurement, build fixes for Visual C++, and the new installation and CPack targets enabling the make install target and creation of binary distribution packages. There are also bugfixes, enhancing the user experience.
Version 0.4: N/A