JayBeams  0.1
Another project to have fun coding.
ut_microbenchmark_config.cpp
Go to the documentation of this file.
2 
3 #include <boost/test/unit_test.hpp>
4 
5 BOOST_AUTO_TEST_CASE(microbenchmark_config_default) {
7 
8  BOOST_CHECK_GT(config.iterations(), 0);
9 }
10 
11 BOOST_AUTO_TEST_CASE(microbenchmark_config_modify) {
13 
14  config.iterations(10).warmup_iterations(11);
15  BOOST_CHECK_EQUAL(config.iterations(), 10);
16  BOOST_CHECK_EQUAL(config.warmup_iterations(), 11);
17 }
18 
19 BOOST_AUTO_TEST_CASE(microbenchmark_config_cmdline) {
20  char argv0[] = "a/b/c";
21  char argv1[] = "--iterations=10";
22  char argv2[] = "--warmup-iterations=11";
23  char* argv[] = {argv0, argv1, argv2};
24  int argc = sizeof(argv) / sizeof(argv[0]);
25 
27  config.process_cmdline(argc, argv);
28 
29  BOOST_CHECK_EQUAL(config.iterations(), 10);
30  BOOST_CHECK_EQUAL(config.warmup_iterations(), 11);
31 }
jb::config_attribute< microbenchmark_config, int > iterations
BOOST_AUTO_TEST_CASE(microbenchmark_config_default)
void process_cmdline(int &argc, char *argv[])
Process the command line.
jb::config_attribute< microbenchmark_config, int > warmup_iterations