[Aptitude-svn-commit] r3858 - in branches/aptitude-0.3/aptitude: .
tests
Daniel Burrows
dburrows at costa.debian.org
Tue Aug 16 00:51:44 UTC 2005
Author: dburrows
Date: Tue Aug 16 00:51:41 2005
New Revision: 3858
Modified:
branches/aptitude-0.3/aptitude/ChangeLog
branches/aptitude-0.3/aptitude/tests/test_resolver.cc
Log:
Fix the solution test to not require an operator<.
Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog (original)
+++ branches/aptitude-0.3/aptitude/ChangeLog Tue Aug 16 00:51:41 2005
@@ -1,5 +1,9 @@
2005-08-15 Daniel Burrows <dburrows at debian.org>
+ * tests/test_resolver.cc:
+
+ Fix the solution test to not require an operator<.
+
* src/generic/problemresolver/problemresolver.h:
Make the ResolverTest class a friend so it can test internals of
Modified: branches/aptitude-0.3/aptitude/tests/test_resolver.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/tests/test_resolver.cc (original)
+++ branches/aptitude-0.3/aptitude/tests/test_resolver.cc Tue Aug 16 00:51:41 2005
@@ -28,7 +28,7 @@
using namespace std;
-typedef generic_solution<dummy_universe> dummy_solution;
+typedef generic_solution<dummy_universe_ref> dummy_solution;
const char *dummy_universe_1 = "\
UNIVERSE [ \
@@ -44,24 +44,36 @@
]";
// Done this way so meaningful line numbers are generated.
-#define assertEquivalent(x1, x2) \
+#define assertEqEquivalent(x1, x2) \
do { \
- CPPUNIT_ASSERT(x1 == x2); \
- CPPUNIT_ASSERT(x2 == x1); \
- CPPUNIT_ASSERT(!(x1 != x2)); \
- CPPUNIT_ASSERT(!(x2 != x1)); \
- CPPUNIT_ASSERT(!(x1 < x2)); \
- CPPUNIT_ASSERT(!(x2 < x1)); \
+ CPPUNIT_ASSERT((x1) == (x2)); \
+ CPPUNIT_ASSERT((x2) == (x1)); \
+ CPPUNIT_ASSERT(!((x1) != (x2))); \
+ CPPUNIT_ASSERT(!((x2) != (x1))); \
+ CPPUNIT_ASSERT(!((x1) < (x2))); \
+ CPPUNIT_ASSERT(!((x2) < (x1))); \
} while(0)
-#define assertInequivalent(x1, x2) \
+#define assertEqInequivalent(x1, x2) \
do { \
- CPPUNIT_ASSERT(x1 != x2); \
- CPPUNIT_ASSERT(x2 != x1); \
- CPPUNIT_ASSERT(!(x1 == x2)); \
- CPPUNIT_ASSERT(!(x2 == x1)); \
- CPPUNIT_ASSERT(x1 < x2 || x2 < x1); \
- CPPUNIT_ASSERT(!(x1 < x2 && x2 < x1)); \
+ CPPUNIT_ASSERT((x1) != (x2)); \
+ CPPUNIT_ASSERT((x2) != (x1)); \
+ CPPUNIT_ASSERT(!((x1) == (x2))); \
+ CPPUNIT_ASSERT(!((x2) == (x1))); \
+ CPPUNIT_ASSERT((x1) < (x2) || (x2) < (x1)); \
+ CPPUNIT_ASSERT(!((x1) < (x2) && (x2) < (x1))); \
+} while(0)
+
+#define assertLtEquivalent(x1, x2, lt) \
+do { \
+ CPPUNIT_ASSERT(!(lt((x1), (x2)))); \
+ CPPUNIT_ASSERT(!(lt((x2), (x1)))); \
+} while(0)
+
+#define assertLtInequivalent(x1, x2, lt) \
+do { \
+ CPPUNIT_ASSERT(lt((x1), (x2)) || lt((x2), (x1))); \
+ CPPUNIT_ASSERT(!(lt((x1), (x2)) && lt((x2), (x1)))); \
} while(0)
class ResolverTest : public CppUnit::TestFixture
@@ -99,25 +111,25 @@
dummy_solution::action a2(u.find_package("a").version_from_name("v1"),
d2, 21);
- assertEquivalent(a1, a1);
- assertEquivalent(a1, a2);
+ assertEqEquivalent(a1, a1);
+ assertEqEquivalent(a1, a2);
dummy_solution::action a3(u.find_package("a").version_from_name("v2"),
d1, 49);
- assertEquivalent(a2, a2);
- assertEquivalent(a3, a3);
+ assertEqEquivalent(a2, a2);
+ assertEqEquivalent(a3, a3);
- assertInequivalent(a1, a3);
- assertInequivalent(a2, a3);
+ assertEqInequivalent(a1, a3);
+ assertEqInequivalent(a2, a3);
dummy_solution::action a4(u.find_package("c").version_from_name("v3"),
d2, 21);
- assertEquivalent(a4, a4);
- assertInequivalent(a1, a4);
- assertInequivalent(a2, a4);
- assertInequivalent(a3, a4);
+ assertEqEquivalent(a4, a4);
+ assertEqInequivalent(a1, a4);
+ assertEqInequivalent(a2, a4);
+ assertEqInequivalent(a3, a4);
}
/** Tests that the comparison operations on solutions work. */
@@ -195,49 +207,51 @@
// and this should not equal any other solution.
dummy_solution s7(s0, d1, 0, 0);
- assertEquivalent(s0, s0);
- assertInequivalent(s0, s1);
- assertInequivalent(s0, s2);
- assertInequivalent(s0, s3);
- assertInequivalent(s0, s4);
- assertInequivalent(s0, s5);
- assertInequivalent(s0, s6);
- assertInequivalent(s0, s7);
-
- assertEquivalent(s1, s1);
- assertInequivalent(s1, s2);
- assertInequivalent(s1, s3);
- assertInequivalent(s1, s4);
- assertInequivalent(s1, s5);
- assertInequivalent(s1, s6);
- assertInequivalent(s1, s7);
-
- assertEquivalent(s2, s2);
- assertInequivalent(s2, s3);
- assertInequivalent(s2, s4);
- assertInequivalent(s2, s5);
- assertInequivalent(s2, s6);
- assertInequivalent(s2, s7);
-
- assertEquivalent(s3, s3);
- assertInequivalent(s3, s4);
- assertInequivalent(s3, s5);
- assertInequivalent(s3, s6);
- assertInequivalent(s3, s7);
-
- assertEquivalent(s4, s4);
- assertInequivalent(s4, s5);
- assertInequivalent(s4, s6);
- assertInequivalent(s4, s7);
-
- assertEquivalent(s5, s5);
- assertEquivalent(s5, s6);
- assertInequivalent(s5, s7);
+ dummy_resolver::solution_contents_compare solcmp;
+
+ assertLtEquivalent(s0, s0, solcmp);
+ assertLtInequivalent(s0, s1, solcmp);
+ assertLtInequivalent(s0, s2, solcmp);
+ assertLtInequivalent(s0, s3, solcmp);
+ assertLtInequivalent(s0, s4, solcmp);
+ assertLtInequivalent(s0, s5, solcmp);
+ assertLtInequivalent(s0, s6, solcmp);
+ assertLtInequivalent(s0, s7, solcmp);
+
+ assertLtEquivalent(s1, s1, solcmp);
+ assertLtInequivalent(s1, s2, solcmp);
+ assertLtInequivalent(s1, s3, solcmp);
+ assertLtInequivalent(s1, s4, solcmp);
+ assertLtInequivalent(s1, s5, solcmp);
+ assertLtInequivalent(s1, s6, solcmp);
+ assertLtInequivalent(s1, s7, solcmp);
+
+ assertLtEquivalent(s2, s2, solcmp);
+ assertLtInequivalent(s2, s3, solcmp);
+ assertLtInequivalent(s2, s4, solcmp);
+ assertLtInequivalent(s2, s5, solcmp);
+ assertLtInequivalent(s2, s6, solcmp);
+ assertLtInequivalent(s2, s7, solcmp);
+
+ assertLtEquivalent(s3, s3, solcmp);
+ assertLtInequivalent(s3, s4, solcmp);
+ assertLtInequivalent(s3, s5, solcmp);
+ assertLtInequivalent(s3, s6, solcmp);
+ assertLtInequivalent(s3, s7, solcmp);
+
+ assertLtEquivalent(s4, s4, solcmp);
+ assertLtInequivalent(s4, s5, solcmp);
+ assertLtInequivalent(s4, s6, solcmp);
+ assertLtInequivalent(s4, s7, solcmp);
+
+ assertLtEquivalent(s5, s5, solcmp);
+ assertLtEquivalent(s5, s6, solcmp);
+ assertLtInequivalent(s5, s7, solcmp);
- assertEquivalent(s6, s6);
- assertInequivalent(s6, s7);
+ assertLtEquivalent(s6, s6, solcmp);
+ assertLtInequivalent(s6, s7, solcmp);
- assertEquivalent(s7, s7);
+ assertLtEquivalent(s7, s7, solcmp);
}
};
More information about the Aptitude-svn-commit
mailing list