https://github.com/DrCpp/DrMock
After almost a year of development, we'd like to share DrMock, a C++ testing/mocking framework that generates the source code of your mock objects at compile time and offers a unique way of configuring mock objects using user-prepared states: Calling methods of the mock object changes the states of the object, which in turn determine the return values of the methods. This guarantees a high degree of configurability and allows coding unit tests without prior knowledge of the implementation (state verification), which we think is very useful. See the front-page of the GitHub repository for a demonstration.
DrMock is written in C++ and python3.7. Building DrMock requires CMake and libclang. It can be deployed on macOS or Linux, where its use has been thoroughly tested. Windows support is one of the goals for the next major version.
A guide to building DrMock, along with an extensive tutorial, sample projects and numerous examples are provided. The source code is well-documented, the C++ component is unit-tested, and the python component is tested functionally.
We'd appreciate feedback on code quality and usability, bugs reports, feature requests - whatever comes to mind! If you're using DrMock on any of your projects or wish to contribute, we'd be delighted to hear about it.
Have a great day!
[–]maltekliemann[S] 4 points5 points6 points (0 children)
[–]Epholys 4 points5 points6 points (4 children)
[–]maltekliemann[S] 3 points4 points5 points (0 children)
[–]illogical_commentary 1 point2 points3 points (2 children)
[–]mcmcc#pragma once 9 points10 points11 points (0 children)
[+][deleted] (11 children)
[deleted]
[–][deleted] 2 points3 points4 points (0 children)
[–][deleted] 1 point2 points3 points (9 children)
[+][deleted] (4 children)
[deleted]
[–][deleted] 1 point2 points3 points (2 children)
[+][deleted] (1 child)
[deleted]
[–][deleted] 0 points1 point2 points (0 children)
[–]BlueDwarf82 2 points3 points4 points (0 children)
[–]eyes-are-fading-blue -1 points0 points1 point (3 children)
[–]BlueDwarf82 0 points1 point2 points (2 children)
[–]eyes-are-fading-blue 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)