2
* Copyright (C) 2007, Remko Troncon
5
#include <cppunit/extensions/HelperMacros.h>
6
#include <cppunit/extensions/TestFactoryRegistry.h>
10
// -----------------------------------------------------------------------------
12
class CapsSpecTest : public CppUnit::TestFixture
14
CPPUNIT_TEST_SUITE(CapsSpecTest);
15
CPPUNIT_TEST(testConstructor);
17
CPPUNIT_TEST(testEqualsNotEquals_Equal);
18
CPPUNIT_TEST(testEqualsNotEquals_NotEqual);
20
CPPUNIT_TEST(testSmallerThan);
21
CPPUNIT_TEST(testSmallerThan_SameNode);
22
CPPUNIT_TEST(testSmallerThan_SameNodeVersion);
23
CPPUNIT_TEST(testSmallerThan_Equals);
25
CPPUNIT_TEST(testFlatten);
27
CPPUNIT_TEST_SUITE_END();
32
void testConstructor();
34
void testEqualsNotEquals_Equal();
35
void testEqualsNotEquals_NotEqual();
36
void testSmallerThan();
37
void testSmallerThan_SameNode();
38
void testSmallerThan_SameNodeVersion();
39
void testSmallerThan_Equals();
42
CPPUNIT_TEST_SUITE_REGISTRATION(CapsSpecTest);
44
// -----------------------------------------------------------------------------
46
CapsSpecTest::CapsSpecTest()
50
void CapsSpecTest::testConstructor()
52
CapsSpec c("a","b","c d");
54
CPPUNIT_ASSERT(c.node() == "a");
55
CPPUNIT_ASSERT(c.version() == "b");
56
CPPUNIT_ASSERT(c.extensions() == "c d");
59
void CapsSpecTest::testEqualsNotEquals_Equal()
61
CapsSpec c1("a","b","c d");
62
CapsSpec c2("a","b","c d");
64
CPPUNIT_ASSERT(c1 == c2);
65
CPPUNIT_ASSERT(!(c1 != c2));
68
void CapsSpecTest::testEqualsNotEquals_NotEqual()
70
CapsSpec c1("a","b","c d");
71
CapsSpec c2("a","e","c d");
73
CPPUNIT_ASSERT(!(c1 == c2));
74
CPPUNIT_ASSERT(c1 != c2);
77
void CapsSpecTest::testSmallerThan()
79
CapsSpec c1("a","b","c");
80
CapsSpec c2("d","e","f");
82
CPPUNIT_ASSERT(c1 < c2);
83
CPPUNIT_ASSERT(!(c2 < c1));
86
void CapsSpecTest::testSmallerThan_SameNode()
88
CapsSpec c1("a","b","c");
89
CapsSpec c2("a","e","f");
91
CPPUNIT_ASSERT(c1 < c2);
92
CPPUNIT_ASSERT(!(c2 < c1));
95
void CapsSpecTest::testSmallerThan_SameNodeVersion()
97
CapsSpec c1("a","b","c");
98
CapsSpec c2("a","b","f");
100
CPPUNIT_ASSERT(c1 < c2);
101
CPPUNIT_ASSERT(!(c2 < c1));
104
void CapsSpecTest::testSmallerThan_Equals()
106
CapsSpec c1("a","b","c");
107
CapsSpec c2("a","b","c");
109
CPPUNIT_ASSERT(!(c1 < c2));
110
CPPUNIT_ASSERT(!(c2 < c1));
113
void CapsSpecTest::testFlatten()
115
CapsSpec c("a","b","c d");
117
CapsSpecs cs = c.flatten();
119
CPPUNIT_ASSERT_EQUAL(3, cs.count());
120
CPPUNIT_ASSERT(cs[0] == CapsSpec("a", "b", "b"));
121
CPPUNIT_ASSERT(cs[1] == CapsSpec("a", "b", "c"));
122
CPPUNIT_ASSERT(cs[2] == CapsSpec("a", "b", "d"));