forked from boostorg/utility
added tests and switched to boost.test
[SVN r1456]
This commit is contained in:
@@ -9,31 +9,37 @@
|
|||||||
// provided the above notices are retained, and a notice that the code was
|
// provided the above notices are retained, and a notice that the code was
|
||||||
// modified is included with the above copyright notice.
|
// modified is included with the above copyright notice.
|
||||||
|
|
||||||
#include <cassert>
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
|
||||||
|
#include <boost/test/minimal.hpp>
|
||||||
#include <boost/utility/lexicographic.hpp>
|
#include <boost/utility/lexicographic.hpp>
|
||||||
|
|
||||||
int main ()
|
int test_main (int, char *[])
|
||||||
{
|
{
|
||||||
using boost::lexicographic;
|
using boost::lexicographic;
|
||||||
|
|
||||||
lexicographic l1; // equivalent
|
lexicographic l1; // equivalent
|
||||||
assert (!l1);
|
BOOST_CHECK (!l1);
|
||||||
|
|
||||||
lexicographic l2 (l1); // equivalent
|
lexicographic l2 (l1); // equivalent
|
||||||
assert (!l2);
|
BOOST_CHECK (!l2);
|
||||||
|
BOOST_CHECK (l1 == l2);
|
||||||
|
|
||||||
l2 = l1;
|
l2 = l1;
|
||||||
assert (!l2);
|
BOOST_CHECK (!l2);
|
||||||
|
BOOST_CHECK (l2 == l1);
|
||||||
|
|
||||||
l2 (3, 6); // less
|
l2 (3, 6); // less
|
||||||
assert (l2);
|
BOOST_CHECK (l2);
|
||||||
assert (l2.result () == lexicographic::minus);
|
BOOST_CHECK (l2.result () == lexicographic::minus);
|
||||||
assert (lexicographic::equivalent != l2.result ());
|
BOOST_CHECK (lexicographic::minus == l2.result ());
|
||||||
|
BOOST_CHECK (l2.result () != lexicographic::equivalent);
|
||||||
|
BOOST_CHECK (lexicographic::equivalent != l2.result ());
|
||||||
|
BOOST_CHECK (l1 != l2);
|
||||||
|
|
||||||
lexicographic l3 (3.0, 1.0); // greater
|
lexicographic l3 (3.0, 1.0); // greater
|
||||||
assert (!l3);
|
BOOST_CHECK (!l3);
|
||||||
|
BOOST_CHECK (l3 != l1);
|
||||||
|
|
||||||
for (int i = 1; i <= 3; ++i)
|
for (int i = 1; i <= 3; ++i)
|
||||||
for (int j = 1; j <= 3; ++j)
|
for (int j = 1; j <= 3; ++j)
|
||||||
@@ -43,28 +49,30 @@ int main ()
|
|||||||
l4 (i, 2) (j, 2) (k, 2);
|
l4 (i, 2) (j, 2) (k, 2);
|
||||||
|
|
||||||
if (i < 2)
|
if (i < 2)
|
||||||
assert (l4);
|
BOOST_CHECK (l4);
|
||||||
else if (i > 2)
|
else if (i > 2)
|
||||||
assert (!l4);
|
BOOST_CHECK (!l4);
|
||||||
else if (j < 2)
|
else if (j < 2)
|
||||||
assert (l4);
|
BOOST_CHECK (l4);
|
||||||
else if (j > 2)
|
else if (j > 2)
|
||||||
assert (!l4);
|
BOOST_CHECK (!l4);
|
||||||
else if (k < 2)
|
else if (k < 2)
|
||||||
assert (l4);
|
BOOST_CHECK (l4);
|
||||||
else
|
else
|
||||||
assert (!l4);
|
BOOST_CHECK (!l4);
|
||||||
}
|
}
|
||||||
|
|
||||||
lexicographic l5;
|
lexicographic l5;
|
||||||
l5 (1, 1, std::greater <int> ()) (2, 3);
|
l5 (1, 1, std::greater <int> ()) (2, 3);
|
||||||
assert (l5);
|
BOOST_CHECK (l5);
|
||||||
|
|
||||||
lexicographic l6;
|
lexicographic l6;
|
||||||
l6 (1, 1, std::greater <int> ()) (2, 3, std::greater <int> ());
|
l6 (1, 1, std::greater <int> ()) (2, 3, std::greater <int> ());
|
||||||
assert (!l6);
|
BOOST_CHECK (!l6);
|
||||||
|
|
||||||
lexicographic l7;
|
lexicographic l7;
|
||||||
l7 (1, 1) (2, 3, std::greater <int> ());
|
l7 (1, 1) (2, 3, std::greater <int> ());
|
||||||
assert (!l7);
|
BOOST_CHECK (!l7);
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user