aboutsummaryrefslogtreecommitdiff
path: root/test/common/hashmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'test/common/hashmap.h')
-rw-r--r--test/common/hashmap.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/test/common/hashmap.h b/test/common/hashmap.h
new file mode 100644
index 0000000000..85da1487f4
--- /dev/null
+++ b/test/common/hashmap.h
@@ -0,0 +1,43 @@
+#include <cxxtest/TestSuite.h>
+
+#include "common/stdafx.h"
+#include "common/hashmap.h"
+
+class HashMapTestSuite : public CxxTest::TestSuite
+{
+ public:
+ void test_empty_clear( void )
+ {
+ Common::HashMap<int, int> map;
+ TS_ASSERT( map.empty() );
+ map[0] = 17;
+ map[1] = 33;
+ TS_ASSERT( !map.empty() );
+ map.clear();
+ TS_ASSERT( map.empty() );
+ }
+ void test_contains( void )
+ {
+ Common::HashMap<int, int> map;
+ map[0] = 17;
+ map[1] = 33;
+ TS_ASSERT( map.contains(0) );
+ TS_ASSERT( map.contains(1) );
+ TS_ASSERT( !map.contains(17) );
+ TS_ASSERT( !map.contains(-1) );
+ }
+
+ void test_add_remove( void )
+ {
+ Common::HashMap<int, int> map;
+ map[0] = 17;
+ map[1] = 33;
+ TS_ASSERT( map.contains(1) );
+ map.erase(1);
+ TS_ASSERT( !map.contains(1) );
+ map[1] = 42;
+ TS_ASSERT( map.contains(1) );
+ }
+
+ // TODO: Add test cases for iterators, find, ...
+};