HashSetTest.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006 #include <boost/test/auto_unit_test.hpp>
00007
00008 #include "HashSet.hpp"
00009
00010 using namespace benzene;
00011
00012
00013
00014 namespace {
00015
00016 BOOST_AUTO_TEST_CASE(HashSet_AllTests)
00017 {
00018 HashSet hm(5);
00019
00020
00021 BOOST_CHECK_EQUAL(hm.size(), 32u);
00022 BOOST_CHECK_EQUAL(hm.count(), 0u);
00023
00024
00025 BOOST_CHECK(!hm.exists(1));
00026
00027
00028 hm.add(1);
00029 BOOST_CHECK(hm.exists(1));
00030 BOOST_CHECK(!hm.exists(2));
00031 BOOST_CHECK_EQUAL(hm.count(), 1u);
00032
00033
00034 hm.add(33);
00035 BOOST_CHECK(hm.exists(1));
00036 BOOST_CHECK(hm.exists(33));
00037 BOOST_CHECK_EQUAL(hm.count(), 2u);
00038
00039 HashSet mm(5);
00040 mm = hm;
00041 BOOST_CHECK(mm.exists(1));
00042 BOOST_CHECK(mm.exists(33));
00043 BOOST_CHECK_EQUAL(mm.count(), 2u);
00044
00045 HashSet blah(mm);
00046 BOOST_CHECK(blah.exists(1));
00047 BOOST_CHECK(blah.exists(33));
00048 BOOST_CHECK_EQUAL(blah.count(), 2u);
00049
00050 hm.clear();
00051 BOOST_CHECK(!hm.exists(1));
00052 BOOST_CHECK(!hm.exists(33));
00053 BOOST_CHECK_EQUAL(hm.count(), 0u);
00054 }
00055
00056 }
00057
00058