ocarina/tests/core/tags/generic.cpp
Anna Schumaker 5a31963e30 tests: Tell doxygen to avoid looking at tag tests
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2014-12-04 08:37:07 -05:00

58 lines
1.5 KiB
C++

/**
* Copyright 2014 (c) Anna Schumaker.
*/
#include <core/tags/generic.h>
#include <tests/test.h>
static void test_generic_tag()
{
GenericTag tag("Generic Tag");
File f("generic_tag", 0);
test_equal(tag.name(), (std::string)"Generic Tag");
test_equal(tag.lowercase(), (std::string)"generic tag");
test_equal(tag.primary_key(), (std::string)"Generic Tag");
f.open(OPEN_WRITE);
tag.write(f);
f.close();
tag = GenericTag();
test_equal(tag.name(), (std::string)"");
test_equal(tag.lowercase(), (std::string)"");
test_equal(tag.primary_key(), (std::string)"");
f.open(OPEN_READ);
tag.read(f);
f.close();
test_equal(tag.name(), (std::string)"Generic Tag");
test_equal(tag.lowercase(), (std::string)"generic tag");
test_equal(tag.primary_key(), (std::string)"Generic Tag");
tag = GenericTag(tag);
test_equal(tag.name(), (std::string)"Generic Tag");
test_equal(tag.lowercase(), (std::string)"generic tag");
test_equal(tag.primary_key(), (std::string)"Generic Tag");
}
static void test_generic_tag_comparison()
{
GenericTag A("A"), a("a"), B("B"), empty("");
test_equal(A.compare(&A), 0);
test_equal(a.compare(&a), 0);
test_equal(A.compare(&B), -1);
test_equal(B.compare(&A), 1);
test_equal(empty.compare(&A), 1);
test_equal(A.compare(&empty), -1);
}
int main(int argc, char **argv)
{
run_test("Generic Tag Test", test_generic_tag);
run_test("Generic Tag Compare Test", test_generic_tag_comparison);
return 0;
}