-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature request: out of the box theories
#30
Comments
This sounds like it would be pretty trivial to implement as a parameterization on expectations. I'm not sure it's something I'd want in mettle proper (it's bad enough that I have a test definition framework, test runner/aggregator, assertion/expectation framework, and output-formatting tools in one lib!), but I could see doing something like this in a separate library. That's the way I did things for compilation-testing (i.e. making sure that certain code compiles/doesn't compile) with caliber, which integrates with mettle's test aggregator. Are you just suggesting I add something like an |
Thanks for the clarification. Jim, is there any documentation for caliber functionality? No, the idea is not just to exclude some sub-cases from the test, which can be performed by the
The theories functionality can be implemented as either a function that calls |
As for this issue, I'll see if there's something I can do about it... |
Theories precisely express software properties over potentially infinite sets of values and provide concise validation of the code logic.
Criterion unit test framework provides pretty good implementation of the theories, which makes it an ultimate choice for math libs and some other projects. Theories can be emulated in mettle using expressive syntax of expectations and matchers but mettle lacks out of the box support of the basic theory rules. Integrated and explicit availability of the most frequently used theories (the list could be fetched from the Criterion) would further speed up and simplify unit testing with mettle.
The text was updated successfully, but these errors were encountered: