void perform_test_trivial() { typedef TestCounter<Test_TestCounter> testcounter_type; typedef typename testcounter_type::int_type int_type; OKLIB_TEST_EQUAL(testcounter_type::counter, 0U); OKLIB_TEST_EQUAL(testcounter_type::throw_value, 0); const int_type number_iterations(1000); for (int_type i = 0; i < number_iterations; ++i) OKLIB_TESTTRIVIAL_RETHROW(testcounter_type()); OKLIB_TEST_EQUAL(testcounter_type::counter, number_iterations); OKLIB_TEST_EQUAL(testcounter_type::throw_value, 0); testcounter_type::throw_value = number_iterations + 1; bool has_thrown = false; try { OKLIB_TESTTRIVIAL_RETHROW(testcounter_type()); } catch(const OKlib::TestSystem::TestException& e) { has_thrown = true; } OKLIB_TEST_EQUAL(has_thrown, true); for (int_type i = 0; i < number_iterations; ++i) OKLIB_TESTTRIVIAL_RETHROW(testcounter_type()); OKLIB_TEST_EQUAL(testcounter_type::counter, 2 * number_iterations + 1); OKLIB_TEST_EQUAL(testcounter_type::throw_value, number_iterations + 1); testcounter_type::throw_value = 2 * number_iterations + 2; has_thrown = false; try { OKLIB_TESTTRIVIAL_RETHROW(testcounter_type()); } catch(const OKlib::TestSystem::TestException& e) { has_thrown = true; } OKLIB_TEST_EQUAL(has_thrown, true); }
void perform_test_trivial() { RandomKSat s; typedef ParserResultElement<RandomKSat> Parser; Parser p(s); { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "SAT", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "123SAT", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "12SA", ::OKlib::Parser::match_not_full)); } }
void perform_test_trivial() { SuperSeries s; typedef ParserResultElement<SuperSeries> Parser; Parser p(s); { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, " 123ABC456", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "468xyz1i ", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "a%b", ::OKlib::Parser::match_not_full)); } }
void perform_test_trivial() { SATStatus s; typedef ParserResultElement<SATStatus> Parser; Parser p(s); { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, " 0", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "10 ", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "x", ::OKlib::Parser::match_not_full)); } }
void perform_test_trivial() { Solver s; typedef ParserResultElement<Solver> Parser; Parser p(s); { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, " solver123", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "solver123 ", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "solver123l", ::OKlib::Parser::match_not_full)); } }
void perform_test_trivial() { AverageTime s; typedef ParserResultElement<AverageTime> Parser; Parser p(s); { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, " 0.1", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "10.0 ", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "x", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "+11.1", ::OKlib::Parser::match_not_full)); } }
void perform_test_trivial() { Result s; typedef ParserResult<Result> Parser; Parser p(s); { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, " 3SAT random/MediumSizeBenches/k3-r4.263-v300 bench1903 solver5 0 1200 1200", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "3SAT random/MediumSizeBenches/k3-r4.263-v300 bench1903 solver5 0 1200 1200 ", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "3SAT random/MediumSizeBenches/k3-r4.263-v300 bench1903 solver5 0 1200", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "random/MediumSizeBenches/k3-r4.263-v300 bench1903 solver5 0 1200 1200", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "3SAT random/MediumSizeBenches/k3-r4.263-v300 bench1903 0 1200 1200+11", ::OKlib::Parser::match_not_full)); } }
void perform_test_trivial() { Result s; typedef ParserResult<Result> Parser; Parser p(s); { typedef std::vector<TupleResult> Vector; Vector test_vector; add_positive_result_tuples(test_vector); for (Vector::const_iterator i = test_vector.begin(); i != test_vector.end(); ++i) { std::stringstream test_stream; test_stream << *i; const std::string test(test_stream.str()); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, test, ::OKlib::Parser::match_full)); if (s.super_series().name() != i -> get<0>().name()) { std::stringstream out; out << "Super Series is " << s.super_series() << ", and not " << i -> get<0>(); OKLIB_THROW(out.str()); } if (s.series().name() != i -> get<1>().name()) { std::stringstream out; out << "Series is " << s.series() << ", and not " << i -> get<1>(); OKLIB_THROW(out.str()); } if (s.benchmark().name() != i -> get<2>().name()) { std::stringstream out; out << "Benchmark is " << s.benchmark() << ", and not " << i -> get<2>(); OKLIB_THROW(out.str()); } if (s.solver().name() != i -> get<3>().name()) { std::stringstream out; out << "Solver is " << s.solver() << ", and not " << i -> get<3>(); OKLIB_THROW(out.str()); } if (s.sat_status().result() != i -> get<4>().result()) { std::stringstream out; out << "Sat_Status is " << s.sat_status() << ", and not " << i -> get<4>(); OKLIB_THROW(out.str()); } if (s.average().average() != i -> get<5>().average()) { std::stringstream out; out << "Average is " << s.average() << ", and not " << i -> get<5>(); OKLIB_THROW(out.str()); } if (s.time_out().time_out() != i -> get<6>().time_out()) { std::stringstream out; out << "Time_Out is " << s.time_out() << ", and not " << i -> get<6>(); OKLIB_THROW(out.str()); } if (s != *i) { std::stringstream out; out << "Result is \"" << s <<"\", and not \"" << *i << "\""; OKLIB_THROW(out.str()); } } } }
void perform_test_trivial() { SuperSeries s; typedef ParserResultElement<SuperSeries> Parser; Parser p(s); { const std::string test = "abc123ABC"; OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, test, ::OKlib::Parser::match_full)); if(s.name() != test) OKLIB_THROW("Resulting name is " + s.name() + ", and not " + test); } }
void perform_test_trivial() { RandomKSat_n s; typedef ParserResultElement<RandomKSat_n> Parser; Parser p(s); { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "A/B", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "A/Bv", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "X/-7", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "hh0/-v", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "a/b-vy", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "a/b-v100 ", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "random/MediumSizeBenches/k3-v7-r4.263--v300", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "random/MediumSizeBenches/-v100-v300", ::OKlib::Parser::match_not_full)); } }
void perform_test_trivial() { Literal l; ParserLiteral p(l); { typedef std::vector<std::string> Vector; Vector test_vector; test_vector.push_back("123"); test_vector.push_back("-456"); for (Vector::const_iterator i = test_vector.begin(); i != test_vector.end(); ++i) { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<ParserLiteral>(p, *i, ::OKlib::Parser::match_full)); if (l.l != boost::lexical_cast<int_type>(*i)) OKLIB_THROW("Index is " + boost::lexical_cast<std::string>(l.l) + ", and not " + *i); } } { typedef std::vector<std::string> Vector; Vector test_vector; test_vector.push_back("0123"); test_vector.push_back("+456"); for (Vector::const_iterator i = test_vector.begin(); i != test_vector.end(); ++i) { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<ParserLiteral>(p, *i, ::OKlib::Parser::match_not_full)); } } }
void perform_test_trivial() { Series s; typedef ParserResultElement<Series> Parser; Parser p(s); { OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, " A/B", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "x", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "x/", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "a%/b", ::OKlib::Parser::match_not_full)); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, "a/b ", ::OKlib::Parser::match_not_full)); } }
void perform_test_trivial() { TimeOut s; typedef ParserResultElement<TimeOut> Parser; Parser p(s); { typedef std::vector<std::string> Vector; Vector test_vector; test_vector.push_back("0"); test_vector.push_back("1"); test_vector.push_back("1200"); for (Vector::const_iterator i = test_vector.begin(); i != test_vector.end(); ++i) { const std::string test = *i; typedef typename TimeOut::natural_number_type natural_number_type; const natural_number_type time_out = boost::lexical_cast<natural_number_type>(test); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, test, ::OKlib::Parser::match_full)); if(s.time_out() != time_out) OKLIB_THROW("Time_Out is " + boost::lexical_cast<std::string>(s.time_out()) + ", and not " + boost::lexical_cast<std::string>(time_out)); } } }
void perform_test_trivial() { RandomKSat s; typedef ParserResultElement<RandomKSat> Parser; Parser p(s); { typedef typename RandomKSat::natural_number_type natural_number_type; typedef std::vector<natural_number_type> Test_vector; Test_vector tv; tv.push_back(3); tv.push_back(10); for (typename Test_vector::const_iterator i = tv.begin(); i != tv.end(); ++i) { const natural_number_type k = *i; const std::string k_string(boost::lexical_cast<std::string>(k)); const std::string test = k_string + "SAT"; OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, test, ::OKlib::Parser::match_full)); if(s.name() != test) OKLIB_THROW("Resulting name is " + s.name() + ", and not " + test); if (s.clause_length() != k) OKLIB_THROW("Clause length is " + boost::lexical_cast<std::string>(s.clause_length()) + ", and not " + k_string); } } }
void perform_test_trivial() { SATStatus s; typedef ParserResultElement<SATStatus> Parser; Parser p(s); { typedef std::pair<std::string, SolverResult> Pair; typedef std::vector<Pair> Vector; Vector test_vector; test_vector.push_back(Pair("0", unknown)); test_vector.push_back(Pair("10", sat)); test_vector.push_back(Pair("20", unsat)); test_vector.push_back(Pair("1", error)); for (Vector::const_iterator i = test_vector.begin(); i != test_vector.end(); ++i) { const std::string test = i -> first; const SolverResult result = i -> second; OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, test, ::OKlib::Parser::match_full)); OKLIB_TEST_EQUAL(s.result(), result); } } }
void perform_test_trivial() { AverageTime s; typedef ParserResultElement<AverageTime> Parser; Parser p(s); { typedef std::vector<std::string> Vector; Vector test_vector; test_vector.push_back("0.0"); test_vector.push_back("0.1"); test_vector.push_back("20.2"); test_vector.push_back("10E3"); test_vector.push_back("100"); for (Vector::const_iterator i = test_vector.begin(); i != test_vector.end(); ++i) { const std::string test = *i; typedef typename AverageTime::floating_point_type floating_point_type; const floating_point_type average = boost::lexical_cast<floating_point_type>(test); OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, test, ::OKlib::Parser::match_full)); if(s.average() != average) OKLIB_THROW("Average is " + boost::lexical_cast<std::string>(s.average()) + ", and not " + boost::lexical_cast<std::string>(average)); } } }
void perform_test_trivial() { RandomKSat_n s; typedef ParserResultElement<RandomKSat_n> Parser; Parser p(s); { typedef typename RandomKSat_n::natural_number_type natural_number_type; typedef std::pair<std::string, natural_number_type> Pair; typedef std::vector<Pair> Vector; Vector test_vector; test_vector.push_back(Pair("random/MediumSizeBenches/k3-r4.263-v", 300)); test_vector.push_back(Pair("random/MediumSizeBenches/k3-v7-r4.263-v", 20)); test_vector.push_back(Pair("random/MediumSizeBenches/k3-v7-r4.263---v", 20)); for (typename Vector::const_iterator i = test_vector.begin(); i != test_vector.end(); ++i) { const natural_number_type n = i -> second; const std::string test_n = boost::lexical_cast<std::string>(n); const std::string test = i -> first + test_n; OKLIB_TESTTRIVIAL_RETHROW(::OKlib::Parser::Test_ParsingString<Parser>(p, test, ::OKlib::Parser::match_full)); if(s.name() != test) OKLIB_THROW("Resulting name is " + s.name() + ", and not " + test); if (s.count_variables() != n) OKLIB_THROW("Variables count is " + boost::lexical_cast<std::string>(s.count_variables()) + ", and not " + test_n); } } }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResult_ResultRandomSat_positive_cases<ResultRandomSat>()); OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResult_Result_negative_cases<ResultRandomSat>()); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(FullyConstructibleEq_basic_test_two_objects<T>(x, y)); OKLIB_TESTTRIVIAL_RETHROW(FullyConstructibleEq_basic_test_two_objects<T>(x, z)); OKLIB_TESTTRIVIAL_RETHROW(FullyConstructibleEq_basic_test_two_objects<T>(y, z)); OKLIB_TESTTRIVIAL_RETHROW(ConstructibleCAEq_basic_test_three_objects<T>(x, y, z)); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(FullyLessThanComparable_Axiom_less_equal_positive<T>(x, x)); OKLIB_TESTTRIVIAL_RETHROW(FullyLessThanComparable_Axiom_less_equal_negative<T>(x, x)); OKLIB_TESTTRIVIAL_RETHROW(FullyLessThanComparable_Axiom_greater_equal_positive<T>(x, x)); OKLIB_TESTTRIVIAL_RETHROW(FullyLessThanComparable_Axiom_greater_equal_negative<T>(x, x)); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(FullyLessThanComparable_basic_test_one_object<T>(x)); OKLIB_TESTTRIVIAL_RETHROW(FullyEqualityComparable_basic_test_one_object<T>(x)); OKLIB_TESTTRIVIAL_RETHROW(LinearOrder_Axiom_negative<T>(x, x)); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_TimeOut_positive_cases<TimeOut>()); OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_TimeOut_negative_cases<TimeOut>()); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(EqualityComparable_basic_test_two_objects<T>(x, y)); OKLIB_TESTTRIVIAL_RETHROW(FullyEqualityComparable_basic_test_one_object<T>(x)); OKLIB_TESTTRIVIAL_RETHROW(FullyEqualityComparable_basic_test_one_object<T>(y)); OKLIB_TESTTRIVIAL_RETHROW(FullyEqualityComparable_Axiom_equal_vs_unequal<T>(x, y)); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_AverageTime_positive_cases<AverageTime>()); OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_AverageTime_negative_cases<AverageTime>()); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_RandomKSat_n_positive_cases<RandomKSat_n>()); OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_Series_negative_cases<RandomKSat_n>()); OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_RandomKSat_n_negative_cases<RandomKSat_n>()); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_Benchmark_positive_cases<Benchmark>()); OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_Benchmark_negative_cases<Benchmark>()); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(ConstructibleDEq_basic_test_no_object<T>()); OKLIB_TESTTRIVIAL_RETHROW(ConstructibleCAEq_basic_test_one_object<T>(x)); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_SuperSeries_positive_cases<SuperSeries>()); OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_SuperSeries_negative_cases<SuperSeries>()); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_Solver_positive_cases<Solver>()); OKLIB_TESTTRIVIAL_RETHROW(Test_ParserResultElement_Solver_negative_cases<Solver>()); }
void perform_test_trivial() { OKLIB_TESTTRIVIAL_RETHROW(ConstructibleDEq_basic_test_one_object<T>(x)); OKLIB_TESTTRIVIAL_RETHROW(ConstructibleDEq_basic_test_one_object<T>(y)); OKLIB_TESTTRIVIAL_RETHROW(FullyEqualityComparable_basic_test_two_objects<T>(x, y)); }