mirror of
https://github.com/libretro/scummvm.git
synced 2025-01-18 16:03:05 +00:00
Some new & extended test cases
svn-id: r21509
This commit is contained in:
parent
c26b762f48
commit
111c0d1ddd
@ -8,35 +8,68 @@ 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() );
|
||||
Common::HashMap<int, int> container;
|
||||
TS_ASSERT( container.empty() );
|
||||
container[0] = 17;
|
||||
container[1] = 33;
|
||||
TS_ASSERT( !container.empty() );
|
||||
container.clear();
|
||||
TS_ASSERT( container.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) );
|
||||
Common::HashMap<int, int> container;
|
||||
container[0] = 17;
|
||||
container[1] = 33;
|
||||
TS_ASSERT( container.contains(0) );
|
||||
TS_ASSERT( container.contains(1) );
|
||||
TS_ASSERT( !container.contains(17) );
|
||||
TS_ASSERT( !container.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) );
|
||||
Common::HashMap<int, int> container;
|
||||
container[0] = 17;
|
||||
container[1] = 33;
|
||||
TS_ASSERT( container.contains(1) );
|
||||
container.erase(1);
|
||||
TS_ASSERT( !container.contains(1) );
|
||||
container[1] = 42;
|
||||
TS_ASSERT( container.contains(1) );
|
||||
}
|
||||
|
||||
void test_lookup( void )
|
||||
{
|
||||
Common::HashMap<int, int> container;
|
||||
container[0] = 17;
|
||||
container[1] = -1;
|
||||
container[2] = 45;
|
||||
container[3] = 12;
|
||||
container[4] = 96;
|
||||
|
||||
TS_ASSERT_EQUALS( container[0], 17 );
|
||||
TS_ASSERT_EQUALS( container[1], -1 );
|
||||
TS_ASSERT_EQUALS( container[2], 45 );
|
||||
TS_ASSERT_EQUALS( container[3], 12 );
|
||||
TS_ASSERT_EQUALS( container[4], 96 );
|
||||
}
|
||||
|
||||
void test_iterator_begin_end( void )
|
||||
{
|
||||
Common::HashMap<int, int> container;
|
||||
|
||||
// The container is initially empty ...
|
||||
TS_ASSERT( container.begin() == container.end() );
|
||||
|
||||
// ... then non-empty ...
|
||||
container[324] = 33;
|
||||
TS_ASSERT( container.begin() != container.end() );
|
||||
|
||||
// ... and again empty.
|
||||
container.clear();
|
||||
TS_ASSERT( container.begin() == container.end() );
|
||||
}
|
||||
|
||||
// TODO: Add test cases for iterators, find, ...
|
||||
|
@ -8,84 +8,99 @@ class ListTestSuite : public CxxTest::TestSuite
|
||||
public:
|
||||
void test_empty_clear( void )
|
||||
{
|
||||
Common::List<int> list;
|
||||
TS_ASSERT( list.empty() );
|
||||
list.push_back(17);
|
||||
list.push_back(33);
|
||||
TS_ASSERT( !list.empty() );
|
||||
list.clear();
|
||||
TS_ASSERT( list.empty() );
|
||||
Common::List<int> container;
|
||||
TS_ASSERT( container.empty() );
|
||||
container.push_back(17);
|
||||
container.push_back(33);
|
||||
TS_ASSERT( !container.empty() );
|
||||
container.clear();
|
||||
TS_ASSERT( container.empty() );
|
||||
}
|
||||
|
||||
void test_iterator_begin_end( void )
|
||||
{
|
||||
Common::List<int> container;
|
||||
|
||||
// The container is initially empty ...
|
||||
TS_ASSERT( container.begin() == container.end() );
|
||||
|
||||
// ... then non-empty ...
|
||||
container.push_back(33);
|
||||
TS_ASSERT( container.begin() != container.end() );
|
||||
|
||||
// ... and again empty.
|
||||
container.clear();
|
||||
TS_ASSERT( container.begin() == container.end() );
|
||||
}
|
||||
|
||||
void test_iterator( void )
|
||||
{
|
||||
Common::List<int> list;
|
||||
Common::List<int> container;
|
||||
Common::List<int>::iterator iter;
|
||||
|
||||
// Fill the list with some random data
|
||||
list.push_back(17);
|
||||
list.push_back(33);
|
||||
list.push_back(-11);
|
||||
// Fill the container with some random data
|
||||
container.push_back(17);
|
||||
container.push_back(33);
|
||||
container.push_back(-11);
|
||||
|
||||
// Iterate over the list and verify that we encounter the elements in
|
||||
// Iterate over the container and verify that we encounter the elements in
|
||||
// the order we expect them to be.
|
||||
|
||||
iter = list.begin();
|
||||
iter = container.begin();
|
||||
|
||||
TS_ASSERT( *iter == 17 );
|
||||
++iter;
|
||||
TS_ASSERT( iter != list.end() );
|
||||
TS_ASSERT( iter != container.end() );
|
||||
|
||||
TS_ASSERT( *iter == 33 );
|
||||
++iter;
|
||||
TS_ASSERT( iter != list.end() );
|
||||
TS_ASSERT( iter != container.end() );
|
||||
|
||||
// Also test the postinc
|
||||
TS_ASSERT( *iter == -11 );
|
||||
iter++;
|
||||
TS_ASSERT( iter == list.end() );
|
||||
TS_ASSERT( iter == container.end() );
|
||||
}
|
||||
|
||||
|
||||
void test_insert( void )
|
||||
{
|
||||
Common::List<int> list;
|
||||
Common::List<int> container;
|
||||
Common::List<int>::iterator iter;
|
||||
|
||||
// Fill the list with some random data
|
||||
list.push_back(17);
|
||||
list.push_back(33);
|
||||
list.push_back(-11);
|
||||
// Fill the container with some random data
|
||||
container.push_back(17);
|
||||
container.push_back(33);
|
||||
container.push_back(-11);
|
||||
|
||||
// Iterate to after the second element
|
||||
iter = list.begin();
|
||||
iter = container.begin();
|
||||
++iter;
|
||||
++iter;
|
||||
|
||||
// Now insert some values here
|
||||
list.insert(iter, 42);
|
||||
list.insert(iter, 43);
|
||||
container.insert(iter, 42);
|
||||
container.insert(iter, 43);
|
||||
|
||||
iter = list.begin();
|
||||
iter = container.begin();
|
||||
|
||||
TS_ASSERT( *iter == 17 );
|
||||
++iter;
|
||||
TS_ASSERT( iter != list.end() );
|
||||
TS_ASSERT( iter != container.end() );
|
||||
|
||||
TS_ASSERT( *iter == 33 );
|
||||
++iter;
|
||||
TS_ASSERT( iter != list.end() );
|
||||
TS_ASSERT( iter != container.end() );
|
||||
|
||||
TS_ASSERT( *iter == 42 );
|
||||
++iter;
|
||||
TS_ASSERT( iter != list.end() );
|
||||
TS_ASSERT( iter != container.end() );
|
||||
|
||||
TS_ASSERT( *iter == 43 );
|
||||
++iter;
|
||||
TS_ASSERT( iter != list.end() );
|
||||
TS_ASSERT( iter != container.end() );
|
||||
|
||||
TS_ASSERT( *iter == -11 );
|
||||
++iter;
|
||||
TS_ASSERT( iter == list.end() );
|
||||
TS_ASSERT( iter == container.end() );
|
||||
}
|
||||
};
|
||||
|
@ -8,35 +8,52 @@ class MapTestSuite : public CxxTest::TestSuite
|
||||
public:
|
||||
void test_empty_clear( void )
|
||||
{
|
||||
Common::Map<int, int> map;
|
||||
TS_ASSERT( map.empty() );
|
||||
map[0] = 17;
|
||||
map[1] = 33;
|
||||
TS_ASSERT( !map.empty() );
|
||||
map.clear();
|
||||
TS_ASSERT( map.empty() );
|
||||
Common::Map<int, int> container;
|
||||
TS_ASSERT( container.empty() );
|
||||
container[0] = 17;
|
||||
container[1] = 33;
|
||||
TS_ASSERT( !container.empty() );
|
||||
container.clear();
|
||||
TS_ASSERT( container.empty() );
|
||||
}
|
||||
|
||||
void test_contains( void )
|
||||
{
|
||||
Common::Map<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) );
|
||||
Common::Map<int, int> container;
|
||||
container[0] = 17;
|
||||
container[1] = 33;
|
||||
TS_ASSERT( container.contains(0) );
|
||||
TS_ASSERT( container.contains(1) );
|
||||
TS_ASSERT( !container.contains(17) );
|
||||
TS_ASSERT( !container.contains(-1) );
|
||||
}
|
||||
|
||||
void test_add_remove( void )
|
||||
{
|
||||
Common::Map<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) );
|
||||
Common::Map<int, int> container;
|
||||
container[0] = 17;
|
||||
container[1] = 33;
|
||||
TS_ASSERT( container.contains(1) );
|
||||
container.erase(1);
|
||||
TS_ASSERT( !container.contains(1) );
|
||||
container[1] = 42;
|
||||
TS_ASSERT( container.contains(1) );
|
||||
}
|
||||
|
||||
void test_lookup( void )
|
||||
{
|
||||
Common::Map<int, int> container;
|
||||
container[0] = 17;
|
||||
container[1] = -1;
|
||||
container[2] = 45;
|
||||
container[3] = 12;
|
||||
container[4] = 96;
|
||||
|
||||
TS_ASSERT_EQUALS( container[0], 17 );
|
||||
TS_ASSERT_EQUALS( container[1], -1 );
|
||||
TS_ASSERT_EQUALS( container[2], 45 );
|
||||
TS_ASSERT_EQUALS( container[3], 12 );
|
||||
TS_ASSERT_EQUALS( container[4], 96 );
|
||||
}
|
||||
|
||||
void test_merge( void )
|
||||
@ -62,5 +79,55 @@ class MapTestSuite : public CxxTest::TestSuite
|
||||
TS_ASSERT_EQUALS( mapA[4], 96 );
|
||||
}
|
||||
|
||||
void test_iterator_begin_end( void )
|
||||
{
|
||||
Common::Map<int, int> container;
|
||||
|
||||
// The container is initially empty ...
|
||||
TS_ASSERT( container.begin() == container.end() );
|
||||
|
||||
// ... then non-empty ...
|
||||
container[324] = 33;
|
||||
TS_ASSERT( container.begin() != container.end() );
|
||||
|
||||
// ... and again empty.
|
||||
container.clear();
|
||||
TS_ASSERT( container.begin() == container.end() );
|
||||
}
|
||||
|
||||
void test_iterator( void )
|
||||
{
|
||||
Common::Map<int, int> container;
|
||||
Common::Map<int, int>::const_iterator iter;
|
||||
|
||||
// Fill the container with some random data
|
||||
container[102] = 17;
|
||||
container[-37] = 33;
|
||||
container[324] = -11;
|
||||
|
||||
// Iterate over the container and verify that we encounter the elements
|
||||
// in increasing order
|
||||
|
||||
iter = container.begin();
|
||||
|
||||
TS_ASSERT( iter->_key == -37 );
|
||||
TS_ASSERT( iter->_value == 33 );
|
||||
++iter;
|
||||
TS_ASSERT( iter != container.end() );
|
||||
|
||||
TS_ASSERT( iter->_key == 102 );
|
||||
TS_ASSERT( iter->_value == 17 );
|
||||
++iter;
|
||||
TS_ASSERT( iter != container.end() );
|
||||
|
||||
#if 0
|
||||
// Also test the postinc
|
||||
TS_ASSERT( iter->_key == 324 );
|
||||
TS_ASSERT( iter->_value == -11 );
|
||||
iter++;
|
||||
TS_ASSERT( iter == container.end() );
|
||||
#endif
|
||||
}
|
||||
|
||||
// TODO: Add test cases for iterators, find, ...
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user