2017-01-18 00:57:20 +01:00
|
|
|
#include <boost/test/unit_test.hpp>
|
|
|
|
#include <loaders/LoaderIPL.hpp>
|
2017-10-26 03:51:24 +02:00
|
|
|
#include "test_Globals.hpp"
|
2017-01-18 00:57:20 +01:00
|
|
|
|
2018-08-07 00:48:16 +02:00
|
|
|
namespace {
|
|
|
|
constexpr auto kIPLTestData = R"(
|
|
|
|
zone
|
|
|
|
ZONE_A, 1, -100.0, -200.00, -100.0, 100.0, 1000.0, 100.0, 1
|
|
|
|
ZONE_B, 0, 200.0, 10.0, -100.0, 100.0, 1000.0, 100.0, 2
|
|
|
|
end
|
|
|
|
)";
|
|
|
|
}
|
|
|
|
|
2018-08-07 00:02:07 +02:00
|
|
|
struct WithLoaderIPL {
|
|
|
|
LoaderIPL loader;
|
2018-08-07 00:37:37 +02:00
|
|
|
|
2018-08-07 00:48:16 +02:00
|
|
|
std::istringstream test_data_stream {kIPLTestData};
|
2018-08-07 00:02:07 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
BOOST_FIXTURE_TEST_SUITE(LoaderIPLTests, WithLoaderIPL)
|
2017-01-18 00:57:20 +01:00
|
|
|
|
2018-08-07 00:25:03 +02:00
|
|
|
BOOST_AUTO_TEST_CASE(zone_count_is_correct) {
|
2018-08-07 00:37:37 +02:00
|
|
|
BOOST_REQUIRE(loader.load(test_data_stream));
|
2017-01-18 00:57:20 +01:00
|
|
|
|
2018-08-07 00:48:16 +02:00
|
|
|
BOOST_TEST(loader.zones.size() == 2);
|
2017-01-18 00:57:20 +01:00
|
|
|
}
|
|
|
|
|
2018-08-07 00:25:03 +02:00
|
|
|
BOOST_AUTO_TEST_CASE(zone_data_is_correct) {
|
2018-08-07 00:37:37 +02:00
|
|
|
BOOST_REQUIRE(loader.load(test_data_stream));
|
2018-08-07 00:25:03 +02:00
|
|
|
|
|
|
|
auto& zone1 = loader.zones[1];
|
2018-08-07 00:48:16 +02:00
|
|
|
BOOST_TEST(zone1.name == "ZONE_B");
|
2018-08-07 00:25:03 +02:00
|
|
|
BOOST_TEST(zone1.type == 0);
|
2018-08-07 00:48:16 +02:00
|
|
|
BOOST_TEST(zone1.min.x == 200.0f);
|
|
|
|
BOOST_TEST(zone1.island == 2);
|
2018-08-07 00:25:03 +02:00
|
|
|
}
|
2017-01-18 00:57:20 +01:00
|
|
|
|
|
|
|
BOOST_AUTO_TEST_SUITE_END()
|