2 #define Array flower_vector
4 #include "std-vector.hh"
8 #include <boost/test/auto_unit_test.hpp>
9 #include <boost/test/floating_point_comparison.hpp>
11 using boost::unit_test::test_suite;
14 #define vector flower_vector
21 for (vsize i = 0; i < v.size (); i++)
22 cout << "v[" << i << "] = " << v[i] << endl;
26 BOOST_AUTO_UNIT_TEST (vector_erase)
31 BOOST_CHECK_EQUAL (v.size (), vsize (2));
32 v.erase (v.begin () + 1);
33 BOOST_CHECK_EQUAL (v.size (), vsize (1));
34 BOOST_CHECK_EQUAL (v.back (), 0);
37 BOOST_CHECK_EQUAL (v.size (), vsize (2));
38 v.erase (v.begin () + 0);
39 BOOST_CHECK_EQUAL (v.size (), vsize (1));
40 BOOST_CHECK_EQUAL (v.back (), 1);
43 BOOST_AUTO_UNIT_TEST (vector_slice)
51 BOOST_CHECK_EQUAL (v.slice (0, 0).size (), vsize (0));
52 BOOST_CHECK_EQUAL (v.slice (0, v.size ()).size (), v.size ());
53 BOOST_CHECK_EQUAL (v.slice (1, 2).size (), vsize (1));
55 BOOST_CHECK_EQUAL (vector<int> (v.begin (), v.begin ()).size (), vsize (0));
56 BOOST_CHECK_EQUAL (vector<int> (v.begin (), v.end ()).size (), v.size ());
57 BOOST_CHECK_EQUAL (vector<int> (v.begin () + 1, v.begin () + 2).size (),
62 BOOST_AUTO_UNIT_TEST (vector_sorting)
69 v.sort (default_compare);
71 vector_sort (v, default_compare);
74 BOOST_CHECK_EQUAL (v[0], 0);
75 BOOST_CHECK_EQUAL (v[1], 1);
76 BOOST_CHECK_EQUAL (v[2], 2);
80 init_unit_test_suite (int, char**)
82 test_suite *test = BOOST_TEST_SUITE("std::Flower");
83 test->add (BOOST_TEST_CASE (vector_erase));
84 test->add (BOOST_TEST_CASE (vector_slice));
85 test->add (BOOST_TEST_CASE (vector_sorting));