~ubuntu-branches/ubuntu/jaunty/psi/jaunty

« back to all changes in this revision

Viewing changes to src/capabilities/unittest/capsspectest.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Jan Niehusmann
  • Date: 2008-08-28 18:46:52 UTC
  • mfrom: (1.2.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20080828184652-iiik12dl91nq7cdi
Tags: 0.12-2
Uploading to unstable (Closes: Bug#494352)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/**
 
2
 * Copyright (C) 2007, Remko Troncon
 
3
 */
 
4
 
 
5
#include <cppunit/extensions/HelperMacros.h>
 
6
#include <cppunit/extensions/TestFactoryRegistry.h>
 
7
 
 
8
#include "capsspec.h"
 
9
 
 
10
// -----------------------------------------------------------------------------
 
11
 
 
12
class CapsSpecTest : public CppUnit::TestFixture
 
13
{
 
14
        CPPUNIT_TEST_SUITE(CapsSpecTest);
 
15
        CPPUNIT_TEST(testConstructor);
 
16
 
 
17
        CPPUNIT_TEST(testEqualsNotEquals_Equal);
 
18
        CPPUNIT_TEST(testEqualsNotEquals_NotEqual);
 
19
 
 
20
        CPPUNIT_TEST(testSmallerThan);
 
21
        CPPUNIT_TEST(testSmallerThan_SameNode);
 
22
        CPPUNIT_TEST(testSmallerThan_SameNodeVersion);
 
23
        CPPUNIT_TEST(testSmallerThan_Equals);
 
24
 
 
25
        CPPUNIT_TEST(testFlatten);
 
26
 
 
27
        CPPUNIT_TEST_SUITE_END();
 
28
 
 
29
public:
 
30
        CapsSpecTest();
 
31
 
 
32
        void testConstructor();
 
33
        void testFlatten();
 
34
        void testEqualsNotEquals_Equal();
 
35
        void testEqualsNotEquals_NotEqual();
 
36
        void testSmallerThan();
 
37
        void testSmallerThan_SameNode();
 
38
        void testSmallerThan_SameNodeVersion();
 
39
        void testSmallerThan_Equals();
 
40
};
 
41
 
 
42
CPPUNIT_TEST_SUITE_REGISTRATION(CapsSpecTest);
 
43
 
 
44
// -----------------------------------------------------------------------------
 
45
 
 
46
CapsSpecTest::CapsSpecTest()
 
47
{
 
48
}
 
49
 
 
50
void CapsSpecTest::testConstructor()
 
51
{
 
52
        CapsSpec c("a","b","c d");
 
53
 
 
54
        CPPUNIT_ASSERT(c.node() == "a");
 
55
        CPPUNIT_ASSERT(c.version() == "b");
 
56
        CPPUNIT_ASSERT(c.extensions() == "c d");
 
57
}
 
58
 
 
59
void CapsSpecTest::testEqualsNotEquals_Equal()
 
60
{
 
61
        CapsSpec c1("a","b","c d");
 
62
        CapsSpec c2("a","b","c d");
 
63
 
 
64
        CPPUNIT_ASSERT(c1 == c2);
 
65
        CPPUNIT_ASSERT(!(c1 != c2));
 
66
}
 
67
 
 
68
void CapsSpecTest::testEqualsNotEquals_NotEqual()
 
69
{
 
70
        CapsSpec c1("a","b","c d");
 
71
        CapsSpec c2("a","e","c d");
 
72
 
 
73
        CPPUNIT_ASSERT(!(c1 == c2));
 
74
        CPPUNIT_ASSERT(c1 != c2);
 
75
}
 
76
 
 
77
void CapsSpecTest::testSmallerThan()
 
78
{
 
79
        CapsSpec c1("a","b","c");
 
80
        CapsSpec c2("d","e","f");
 
81
 
 
82
        CPPUNIT_ASSERT(c1 < c2);
 
83
        CPPUNIT_ASSERT(!(c2 < c1));
 
84
}
 
85
 
 
86
void CapsSpecTest::testSmallerThan_SameNode()
 
87
{
 
88
        CapsSpec c1("a","b","c");
 
89
        CapsSpec c2("a","e","f");
 
90
 
 
91
        CPPUNIT_ASSERT(c1 < c2);
 
92
        CPPUNIT_ASSERT(!(c2 < c1));
 
93
}
 
94
 
 
95
void CapsSpecTest::testSmallerThan_SameNodeVersion()
 
96
{
 
97
        CapsSpec c1("a","b","c");
 
98
        CapsSpec c2("a","b","f");
 
99
 
 
100
        CPPUNIT_ASSERT(c1 < c2);
 
101
        CPPUNIT_ASSERT(!(c2 < c1));
 
102
}
 
103
 
 
104
void CapsSpecTest::testSmallerThan_Equals()
 
105
{
 
106
        CapsSpec c1("a","b","c");
 
107
        CapsSpec c2("a","b","c");
 
108
 
 
109
        CPPUNIT_ASSERT(!(c1 < c2));
 
110
        CPPUNIT_ASSERT(!(c2 < c1));
 
111
}
 
112
 
 
113
void CapsSpecTest::testFlatten()
 
114
{
 
115
        CapsSpec c("a","b","c d");
 
116
 
 
117
        CapsSpecs cs = c.flatten();
 
118
 
 
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"));
 
123
}
 
124