This file lists the major changes between versions. For a more detailed list of every change, see the Git log.
- tbd
- Patch: Changed the container type for storing return values in return_handler from std::vector to std::deque to avoid a specific issue with std::vector<bool>. This change ensures safer and more predictable behavior when using STL algorithms.
- Minor: Added the check function to allow a user to check if a function has been called with specific arguments. If not the check function will throw an exception.
- Minor: Added the side_effect function to allow a user to specify a function that will be called when a function is called.
- Major: Use waf-tools 5.
- Minor: Added CMake support.
- Minor: Updated waf.
- Minor: Updating how docs are built
- Minor: Update waf build script
- Minor: Adding documentation.
- Minor: Added the ability to check if specific arguments are not null when comparing function calls in expect_calls().
- Minor: Allow a user to clear only the function calls made.
- Major: Upgrade to waf-tools 4
- Minor: Upgrade to gtest 4
- Patch: Fixed memory leak in compare_call due to missing virtual destructor.
- Major: Renamed stub::call to stub::function as this better reflects its true purpose.
- Major: Change the approach to providing custom comparisons of function arguments. This is now done by passing stub::compare to expect_calls().with(...).
- Minor: Added the ability to ignore specific arguments when comparing function calls in expect_calls().
- Minor: Added the ability to clear function objects
- Major: Removed the need to use
std::initializer_list
when specifying multiple return values.
- Patch: Fix printing of pointers. We rely on
std::ostream::operator<<
for printing pointer values. This caused problems with raw binary data (char* or uint8_t*) sincestd::ostream::operator<<
tries to print those as zero-terminated c-style strings. Instead we now always print the address pointed to rather than trying to print the actual data.
- Major: Upgrade to waf-tools 3
- Minor: Upgrade to gtest 3
- Major: Removed the
repeat
member function as it does not have a proper use case. - Major: Removed the
ignore
member function as it does not have a proper use case.
- Minor: Added the
to_bool
function - a more verbose version of converting - Patch: Added assert to ensure that expectations has been setup prior to the expectation to a boolean value.
- Patch: Added
assert
to ensure that expectations has been setup prior to evaluation.
- Minor: Added
buildbot.py
for coverage reports. - Minor: Added methods allowing a
stub::function
object to be printed to anstd::ostream
.
- Patch: Fixed MSVC type conversion warnings.
- Patch: Fix version define.
- Minor: Added version define.
- Bug: Added const modifier to the
stub::function::expect_calls()
functions. They do not modify the object so they should beconst
. - Bug: Updated documentation to specify in which order arguments are passed to a custom predicate function.
- Major: Replaced the
called_once_with(...)
,called_with(...)
andhas_calls(...)
functions with theexpect_calls(...)
functions. Theexpect_calls(...)
functions provide the same functionality as the replaced functions, but are more convenient to use.
- Minor: Added the
call_arguments(..)
function to access a specific function's arguments
- Bug: Add missing assert checking that the
return_handler
has actual values to return
- Initial release of the stub library.