/* * Copyright 2014 (c) Anna Schumaker. */ #include #include namespace test { static unsigned int test_num; void new_test(const std::string &name) { std::cout << name << std::endl; test_num = 0; } void begin() { std::cout << " " << test_num << ": "; test_num++; } template void assert_equal(const T &lhs, const T &rhs) { if (lhs == rhs) std::cout << "Success!" << std::endl; else { std::cout << "Failed! =(" << std::endl; std::cout << " Actual: " << lhs << std::endl; std::cout << " Expected: " << rhs << std::endl; exit(1); } } template void equal(const T &lhs, const T &rhs) { begin(); assert_equal(lhs, rhs); } }