Add a PromotionManager.
[tagua/yd.git] / tests / variants / pooltest.h
blobbebd58cc71ad7fae168281e47bd3c53274f2c302
1 #ifndef POOLTEST_H
2 #define POOLTEST_H
4 #include <cppunit/extensions/HelperMacros.h>
5 #include <cppunit/TestCaller.h>
6 #include <cppunit/TestResult.h>
7 #include <cppunit/TestFixture.h>
8 #include <cppunit/TestAssert.h>
10 namespace HLVariant {
11 template <typename T> class Pool;
12 template <typename T> class PoolCollection;
13 namespace Chess {
14 class Piece;
18 typedef HLVariant::Chess::Piece ChessPiece;
19 typedef HLVariant::Pool<ChessPiece> ChessPool;
20 typedef HLVariant::PoolCollection<ChessPool> ChessPoolCollection;
22 class PoolTest : public CppUnit::TestFixture {
23 CPPUNIT_TEST_SUITE(PoolTest);
24 CPPUNIT_TEST(test_empty_pool);
25 CPPUNIT_TEST(test_add);
26 CPPUNIT_TEST(test_remove);
27 CPPUNIT_TEST(test_remove_clear);
28 CPPUNIT_TEST(test_size);
29 CPPUNIT_TEST(test_empty_remove);
30 CPPUNIT_TEST(test_pool_equality);
31 CPPUNIT_TEST(test_collection_equality);
32 CPPUNIT_TEST_SUITE_END();
33 private:
34 ChessPoolCollection* m_pools;
35 public:
36 void setUp();
37 void tearDown();
39 void test_empty_pool();
40 void test_add();
41 void test_remove();
42 void test_remove_clear();
43 void test_size();
44 void test_empty_remove();
45 void test_pool_equality();
46 void test_collection_equality();
49 #endif // POOLTEST_H