[Aptitude-svn-commit] r4107 - in branches/aptitude-0.3/aptitude: .
tests
Daniel Burrows
dburrows at costa.debian.org
Sun Sep 18 03:46:58 UTC 2005
Author: dburrows
Date: Sun Sep 18 03:46:55 2005
New Revision: 4107
Modified:
branches/aptitude-0.3/aptitude/ChangeLog
branches/aptitude-0.3/aptitude/tests/test_wtree.cc
Log:
Add a test for the subset (containment) routine.
Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog (original)
+++ branches/aptitude-0.3/aptitude/ChangeLog Sun Sep 18 03:46:55 2005
@@ -1,5 +1,9 @@
2005-09-17 Daniel Burrows <dburrows at debian.org>
+ * tests/test_wtree.cc:
+
+ Add a test for the subset (containment) routine.
+
* src/generic/immset.h:
Write an intrinsic subset routine for the binary trees that
Modified: branches/aptitude-0.3/aptitude/tests/test_wtree.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/tests/test_wtree.cc (original)
+++ branches/aptitude-0.3/aptitude/tests/test_wtree.cc Sun Sep 18 03:46:55 2005
@@ -80,6 +80,7 @@
CPPUNIT_TEST(testEquality);
CPPUNIT_TEST(testLessThan);
CPPUNIT_TEST(testIntersects);
+ CPPUNIT_TEST(testContains);
CPPUNIT_TEST(generalWTreeTest);
CPPUNIT_TEST(mapTest);
CPPUNIT_TEST(mapIntersectTest);
@@ -625,6 +626,128 @@
assertNoIntersect(b, a);
}
+#define assertNotContains(a, b) \
+ do { \
+ if(a.contains(b)) \
+ { \
+ std::ostringstream out; \
+ out << a << " unexpectedly contains " << b << ":"\
+ << std::endl; \
+ a.dump(out); \
+ b.dump(out); \
+ CPPUNIT_FAIL(out.str()); \
+ } \
+ } while(0)
+
+#define assertContains(a, b) \
+ do { \
+ if(!a.contains(b)) \
+ { \
+ std::ostringstream out; \
+ out << a << " unexpectedly does not contain " << b << ":"\
+ << std::endl; \
+ a.dump(out); \
+ b.dump(out); \
+ CPPUNIT_FAIL(out.str()); \
+ } \
+ } while(0)
+
+ void testContains()
+ {
+ set<int> s1;
+ set<int> s2;
+ set<int> s3;
+
+ s1.insert(5);
+
+ s2.insert(6);
+ s2.insert(8);
+
+ s3.insert(10);
+ s3.insert(5);
+
+ set<int> t;
+
+ assertContains(s1, t);
+ assertContains(s2, t);
+ assertContains(s3, t);
+ assertNotContains(t, s1);
+ assertNotContains(t, s2);
+ assertNotContains(t, s3);
+
+
+
+ t.insert(5);
+
+ assertContains(s1, t);
+ assertNotContains(s2, t);
+ assertContains(s3, t);
+ assertContains(t, s1);
+ assertNotContains(t, s2);
+ assertNotContains(t, s3);
+
+
+ t.insert(10);
+
+ assertNotContains(s1, t);
+ assertNotContains(s2, t);
+ assertContains(s3, t);
+ assertContains(t, s1);
+ assertNotContains(t, s2);
+ assertContains(t, s3);
+
+ t.insert(6);
+
+
+ assertNotContains(s1, t);
+ assertNotContains(s2, t);
+ assertContains(s3, t);
+ assertContains(t, s1);
+ assertNotContains(t, s2);
+ assertContains(t, s3);
+
+ t.erase(5);
+
+ assertNotContains(s1, t);
+ assertNotContains(s2, t);
+ assertNotContains(s3, t);
+ assertNotContains(t, s1);
+ assertNotContains(t, s2);
+ assertNotContains(t, s3);
+
+
+ t.insert(9);
+
+
+ assertNotContains(s1, t);
+ assertNotContains(s2, t);
+ assertNotContains(s3, t);
+ assertNotContains(t, s1);
+ assertNotContains(t, s2);
+ assertNotContains(t, s3);
+
+
+ t.insert(8);
+
+ assertNotContains(s1, t);
+ assertNotContains(s2, t);
+ assertNotContains(s3, t);
+ assertNotContains(t, s1);
+ assertContains(t, s2);
+ assertNotContains(t, s3);
+
+
+ t.erase(9);
+
+
+ assertNotContains(s1, t);
+ assertNotContains(s2, t);
+ assertNotContains(s3, t);
+ assertNotContains(t, s1);
+ assertContains(t, s2);
+ assertNotContains(t, s3);
+ }
+
void generalWTreeTest()
{
set<int> t;
More information about the Aptitude-svn-commit
mailing list