From 9ff7894ef1eeff001f3ddc1a1caec18176428fa1 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 29 Aug 2016 20:26:16 +0300 Subject: Add some cleanup calls in unit tests. --- src/utils/files_unittest.cc | 6 ++++++ src/utils/translation/poparser_unittest.cc | 21 +++++++++++++++++++++ src/utils/xml_unittest.cc | 24 ++++++++++++++++++++++++ src/utils/xmlutils_unittest.cc | 2 ++ 4 files changed, 53 insertions(+) (limited to 'src/utils') diff --git a/src/utils/files_unittest.cc b/src/utils/files_unittest.cc index 5ccfe0e04..9acd1e059 100644 --- a/src/utils/files_unittest.cc +++ b/src/utils/files_unittest.cc @@ -63,6 +63,7 @@ TEST_CASE("Files renameFile") delete [] buf; delete [] buf2; + ResourceManager::deleteInstance(); } TEST_CASE("Files existsLocal") @@ -76,6 +77,7 @@ TEST_CASE("Files existsLocal") REQUIRE(Files::existsLocal(Files::getPath("help/about.txt")) == true); REQUIRE_FALSE(Files::existsLocal(Files::getPath("help/about1.txt"))); REQUIRE_FALSE(Files::existsLocal(Files::getPath("help1/about.txt"))); + ResourceManager::deleteInstance(); } TEST_CASE("Files loadTextFileString") @@ -88,6 +90,7 @@ TEST_CASE("Files loadTextFileString") resourceManager->addToSearchPath("../data", Append_false); REQUIRE(Files::loadTextFileString("test/simplefile.txt") == "this is test \nfile."); + ResourceManager::deleteInstance(); } TEST_CASE("Files loadTextFile") @@ -104,6 +107,7 @@ TEST_CASE("Files loadTextFile") REQUIRE(lines.size() == 2); REQUIRE(lines[0] == "this is test "); REQUIRE(lines[1] == "file."); + ResourceManager::deleteInstance(); } TEST_CASE("Files saveTextFile") @@ -121,6 +125,7 @@ TEST_CASE("Files saveTextFile") std::string data = Files::loadTextFileString("test/tempfile.txt"); ::remove((dir + "/tempfile.txt").c_str()); REQUIRE(data == "test line\ntext line2\n"); + ResourceManager::deleteInstance(); } TEST_CASE("Files getFilesInDir") @@ -149,4 +154,5 @@ TEST_CASE("Files getFilesInDir") REQUIRE(list[2] == "perserver/default/defaultcommands.xml"); REQUIRE(list[3] == "perserver/default/features.xml"); REQUIRE(list[4] == "perserver/default/weapons.xml"); + ResourceManager::deleteInstance(); } diff --git a/src/utils/translation/poparser_unittest.cc b/src/utils/translation/poparser_unittest.cc index 0fcf2bae5..d75088ee2 100644 --- a/src/utils/translation/poparser_unittest.cc +++ b/src/utils/translation/poparser_unittest.cc @@ -20,19 +20,28 @@ #include "catch.hpp" #include "client.h" +#include "graphicsmanager.h" #include "logger.h" +#include "being/actorsprite.h" + #include "utils/translation/podict.h" #include "utils/translation/poparser.h" +#include "resources/sdlimagehelper.h" + #include "resources/resourcemanager/resourcemanager.h" +#include "utils/delete2.h" +#include "utils/env.h" #include "utils/physfstools.h" #include "debug.h" TEST_CASE("PoParser tests", "PoParser") { + setEnv("SDL_VIDEODRIVER", "dummy"); + client = new Client; PHYSFS_init("manaplus"); dirSeparator = "/"; @@ -41,6 +50,17 @@ TEST_CASE("PoParser tests", "PoParser") resourceManager->addToSearchPath("data", Append_false); resourceManager->addToSearchPath("../data", Append_false); + imageHelper = new SDLImageHelper(); +#ifdef USE_SDL2 + SDLImageHelper::setRenderer(graphicsManager.createRenderer( + graphicsManager.createWindow(640, 480, 0, + SDL_WINDOW_SHOWN | SDL_SWSURFACE), SDL_RENDERER_SOFTWARE)); +#else + graphicsManager.createWindow(640, 480, 0, SDL_ANYFORMAT | SDL_SWSURFACE); +#endif + + ActorSprite::load(); + SECTION("PoParser empty") { PoParser *parser = new PoParser; @@ -92,4 +112,5 @@ TEST_CASE("PoParser tests", "PoParser") delete parser; delete dict; } + delete2(client); } diff --git a/src/utils/xml_unittest.cc b/src/utils/xml_unittest.cc index e2f68181e..d90bfb37d 100644 --- a/src/utils/xml_unittest.cc +++ b/src/utils/xml_unittest.cc @@ -21,16 +21,27 @@ #include "catch.hpp" #include "client.h" #include "logger.h" +#include "graphicsmanager.h" +#include "being/actorsprite.h" + +#include "gui/theme.h" + +#include "utils/delete2.h" +#include "utils/env.h" #include "utils/physfstools.h" #include "utils/xml.h" +#include "resources/sdlimagehelper.h" + #include "resources/resourcemanager/resourcemanager.h" #include "debug.h" TEST_CASE("xml doc") { + setEnv("SDL_VIDEODRIVER", "dummy"); + client = new Client; PHYSFS_init("manaplus"); dirSeparator = "/"; @@ -39,7 +50,19 @@ TEST_CASE("xml doc") ResourceManager::init(); resourceManager->addToSearchPath("data", Append_false); resourceManager->addToSearchPath("../data", Append_false); + imageHelper = new SDLImageHelper(); +#ifdef USE_SDL2 + SDLImageHelper::setRenderer(graphicsManager.createRenderer( + graphicsManager.createWindow(640, 480, 0, + SDL_WINDOW_SHOWN | SDL_SWSURFACE), SDL_RENDERER_SOFTWARE)); +#else + graphicsManager.createWindow(640, 480, 0, SDL_ANYFORMAT | SDL_SWSURFACE); +#endif + + theme = new Theme; + Theme::selectSkin(); const char *const tempXmlName = "tempxml.xml"; + ActorSprite::load(); SECTION("load1") { @@ -326,4 +349,5 @@ TEST_CASE("xml doc") // clean again ::remove(tempXmlName); } + delete2(client); } diff --git a/src/utils/xmlutils_unittest.cc b/src/utils/xmlutils_unittest.cc index 4e78d0b0e..3fc27c598 100644 --- a/src/utils/xmlutils_unittest.cc +++ b/src/utils/xmlutils_unittest.cc @@ -58,6 +58,7 @@ TEST_CASE("xmlutils readXmlIntVector 1") REQUIRE(0 == arr[2]); REQUIRE(1 == arr[3]); REQUIRE(1 == arr[4]); + ResourceManager::deleteInstance(); } TEST_CASE("xmlutils readXmlStringMap 1") @@ -86,4 +87,5 @@ TEST_CASE("xmlutils readXmlStringMap 1") REQUIRE(arr["Kitty"] == "0"); REQUIRE(arr["xD"] == "1"); REQUIRE(arr["Metal"] == "26"); + ResourceManager::deleteInstance(); } -- cgit v1.2.3-60-g2f50