Small fix in profile + profile_test rewritten to gtest.
parent
38ebf4c398
commit
df4e3dfb6e
|
@ -5,6 +5,7 @@ add_subdirectory(CBot)
|
||||||
add_subdirectory(tools)
|
add_subdirectory(tools)
|
||||||
|
|
||||||
# Tests
|
# Tests
|
||||||
|
add_subdirectory(common/test)
|
||||||
add_subdirectory(graphics/engine/test)
|
add_subdirectory(graphics/engine/test)
|
||||||
add_subdirectory(math/test)
|
add_subdirectory(math/test)
|
||||||
|
|
||||||
|
|
|
@ -104,6 +104,7 @@ bool CProfile::SetLocalProfileInt(std::string section, std::string key, int valu
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
m_propertyTree.put(section + "." + key, value);
|
m_propertyTree.put(section + "." + key, value);
|
||||||
|
m_profileNeedSave = true;
|
||||||
}
|
}
|
||||||
catch (std::exception & e)
|
catch (std::exception & e)
|
||||||
{
|
{
|
||||||
|
@ -134,6 +135,7 @@ bool CProfile::SetLocalProfileFloat(std::string section, std::string key, float
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
m_propertyTree.put(section + "." + key, value);
|
m_propertyTree.put(section + "." + key, value);
|
||||||
|
m_profileNeedSave = true;
|
||||||
}
|
}
|
||||||
catch (std::exception & e)
|
catch (std::exception & e)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,14 +1,20 @@
|
||||||
cmake_minimum_required(VERSION 2.8)
|
cmake_minimum_required(VERSION 2.8)
|
||||||
|
|
||||||
set(CMAKE_BUILD_TYPE debug)
|
set(CMAKE_BUILD_TYPE debug)
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g -O0 -std=c++11")
|
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0 -Wall -Wold-style-cast -std=gnu++0x")
|
||||||
|
|
||||||
|
include_directories(
|
||||||
|
.
|
||||||
|
../..
|
||||||
|
../../..
|
||||||
|
${GTEST_DIR}/include
|
||||||
|
)
|
||||||
|
|
||||||
include_directories("../../")
|
|
||||||
include_directories("../../../")
|
|
||||||
|
|
||||||
add_executable(image_test ../image.cpp image_test.cpp)
|
add_executable(image_test ../image.cpp image_test.cpp)
|
||||||
target_link_libraries(image_test -lpng -lSDL -lSDL_image)
|
target_link_libraries(image_test ${SDL_LIBRARY} ${SDLIMAGE_LIBRARY} ${PNG_LIBRARIES})
|
||||||
|
|
||||||
add_executable(profile_test ../profile.cpp profile_test.cpp)
|
add_executable(profile_test ../profile.cpp ../logger.cpp profile_test.cpp)
|
||||||
|
target_link_libraries(profile_test gtest ${Boost_LIBRARIES})
|
||||||
|
|
||||||
add_test(profile_test ./profile_test)
|
add_test(profile_test ./profile_test)
|
||||||
|
|
|
@ -8,8 +8,8 @@ string_value=Hello world
|
||||||
int_value=42
|
int_value=42
|
||||||
|
|
||||||
[test_multi]
|
[test_multi]
|
||||||
entry=1
|
entry1=1
|
||||||
entry=2
|
entry2=2
|
||||||
entry=3
|
entry3=3
|
||||||
entry=4
|
entry4=4
|
||||||
entry=5
|
entry5=5
|
||||||
|
|
|
@ -1,43 +1,44 @@
|
||||||
#include "../profile.h"
|
#include "../profile.h"
|
||||||
|
#include "../logger.h"
|
||||||
|
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
#include <gtest/gtest.h>
|
||||||
|
|
||||||
using namespace std;
|
|
||||||
|
|
||||||
int main()
|
class CProfileTest : public testing::Test
|
||||||
{
|
{
|
||||||
CProfile profile;
|
protected:
|
||||||
profile.InitCurrentDirectory(); // load colobot.ini file
|
CLogger m_logger;
|
||||||
|
CProfile m_profile;
|
||||||
|
|
||||||
string result;
|
};
|
||||||
profile.GetLocalProfileString("test_string", "string_value", result);
|
|
||||||
if (result != "Hello world") {
|
TEST_F(CProfileTest, ReadTest)
|
||||||
cout << "GetLocalProfileString failed!" << endl;
|
{
|
||||||
return 1;
|
ASSERT_TRUE(m_profile.InitCurrentDirectory()); // load colobot.ini file
|
||||||
}
|
|
||||||
|
std::string result;
|
||||||
|
ASSERT_TRUE(m_profile.GetLocalProfileString("test_string", "string_value", result));
|
||||||
|
ASSERT_STREQ("Hello world", result.c_str());
|
||||||
|
|
||||||
int int_value;
|
int int_value;
|
||||||
profile.GetLocalProfileInt("test_int", "int_value", int_value);
|
ASSERT_TRUE(m_profile.GetLocalProfileInt("test_int", "int_value", int_value));
|
||||||
if (int_value != 42) {
|
ASSERT_EQ(42, int_value);
|
||||||
cout << "GetLocalProfileInt failed!" << endl;
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
float float_value;
|
float float_value;
|
||||||
profile.GetLocalProfileFloat("test_float", "float_value", float_value);
|
ASSERT_TRUE(m_profile.GetLocalProfileFloat("test_float", "float_value", float_value));
|
||||||
if (float_value != 1.5) {
|
ASSERT_FLOAT_EQ(1.5, float_value);
|
||||||
cout << "GetLocalProfileFloat failed!" << endl;
|
|
||||||
return 1;
|
std::vector<std::string> list;
|
||||||
|
list = m_profile.GetLocalProfileSection("test_multi", "entry");
|
||||||
|
ASSERT_EQ(5u, list.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
vector<string> list;
|
int main(int argc, char *argv[])
|
||||||
list = profile.GetLocalProfileSection("test_multi", "entry");
|
{
|
||||||
if (list.size() != 5) {
|
::testing::InitGoogleTest(&argc, argv);
|
||||||
cout << "GetLocalProfileSection failed!" << endl;
|
return RUN_ALL_TESTS();
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in New Issue