ocarina/tests/src/test.h

46 lines
720 B
C++

/*
* Copyright 2014 (c) Anna Schumaker.
*/
#include <iostream>
#include <stdlib.h>
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 <class T>
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 <class T>
void equal(const T &lhs, const T &rhs)
{
begin();
assert_equal(lhs, rhs);
}
}