[Scummvm-cvs-logs] CVS: scummvm/test/common list.h,NONE,1.1 map.h,NONE,1.1 str.h,NONE,1.1

Max Horn fingolfin at users.sourceforge.net
Wed Dec 24 08:17:01 CET 2003


Update of /cvsroot/scummvm/scummvm/test/common
In directory sc8-pr-cvs1:/tmp/cvs-serv29100/common

Added Files:
	list.h map.h str.h 
Log Message:
simple unit tests for List/Map/String classes

--- NEW FILE: list.h ---
#include <cxxtest/TestSuite.h>

#include "stdafx.h"
#include "common/list.h"

class ListTestSuite : public CxxTest::TestSuite 
{
	public:
	void test_isEmpty_clear( void )
	{
		Common::List<int> list;
		TS_ASSERT( list.isEmpty() );
		list.push_back(17);
		list.push_back(33);
		TS_ASSERT( !list.isEmpty() );
		list.clear();
		TS_ASSERT( list.isEmpty() );
	}
};

--- NEW FILE: map.h ---
#include <cxxtest/TestSuite.h>

#include "stdafx.h"
#include "common/map.h"

class MapTestSuite : public CxxTest::TestSuite 
{
	public:
	void test_isEmpty_clear( void )
	{
		Common::Map<int, int> map;
		TS_ASSERT( map.isEmpty() );
		map[0] = 17;
		map[1] = 33;
		TS_ASSERT( !map.isEmpty() );
		map.clear();
		TS_ASSERT( map.isEmpty() );
	}
	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) );
	}

	void test_add_remove( void )
	{
		Common::Map<int, int> map;
		map[0] = 17;
		map[1] = 33;
		TS_ASSERT( map.contains(1) );
		map.remove(1);
		TS_ASSERT( !map.contains(1) );
		map.addKey(1);
		TS_ASSERT( map.contains(1) );
	}

	void test_merge( void )
	{
		Common::Map<int, int> mapA, mapB;
		mapA[0] = 17;
		mapA[1] = 33;
		mapA[2] = 45;
		mapA[3] = 12;

		mapB[1] = -1;
		mapB[4] = 96;
		
		mapA.merge(mapB);

		TS_ASSERT( mapA.contains(1) );
		TS_ASSERT( mapA.contains(4) );

		TS_ASSERT_EQUALS( mapA[0], 17 );
		TS_ASSERT_EQUALS( mapA[1], -1 );
		TS_ASSERT_EQUALS( mapA[2], 45 );
		TS_ASSERT_EQUALS( mapA[3], 12 );
		TS_ASSERT_EQUALS( mapA[4], 96 );
	}
};

--- NEW FILE: str.h ---
#include <cxxtest/TestSuite.h>

#include "stdafx.h"
#include "common/str.h"

class StringTestSuite : public CxxTest::TestSuite 
{
	public:
	void test_isEmpty_clear( void )
	{
		Common::String str("test");
		TS_ASSERT( !str.isEmpty() );
		str.clear();
		TS_ASSERT( str.isEmpty() );
	}

	void test_lastChar( void )
	{
		Common::String str;
		TS_ASSERT_EQUALS( str.lastChar(), '\0' );
		str = "test";
		TS_ASSERT_EQUALS( str.lastChar(), 't' );
		Common::String str2("bar");
		TS_ASSERT_EQUALS( str2.lastChar(), 'r' );
	}

	void test_concat1( void )
	{
		Common::String str("foo");
		Common::String str2("bar");
		str += str2;
		TS_ASSERT_EQUALS( str, "foobar" );
		TS_ASSERT_EQUALS( str2, "bar" );
	}

	void test_concat2( void )
	{
		Common::String str("foo");
		str += "bar";
		TS_ASSERT_EQUALS( str, "foobar" );
	}

	void test_concat3( void )
	{
		Common::String str("foo");
		str += 'X';
		TS_ASSERT_EQUALS( str, "fooX" );
	}

	void test_toLowercase( void )
	{
		Common::String str("Test it, NOW! 42");
		str.toLowercase();
		TS_ASSERT_EQUALS( str, "test it, now! 42" );
	}

	void test_toUppercase( void )
	{
		Common::String str("Test it, NOW! 42");
		str.toUppercase();
		TS_ASSERT_EQUALS( str, "TEST IT, NOW! 42" );
	}
};





More information about the Scummvm-git-logs mailing list