Fixed existing tests in location_marker_part2

This commit is contained in:
AdenKoperczak 2024-12-09 14:12:18 -05:00
parent 5bb4a7f95a
commit 4432bcb93c
2 changed files with 17 additions and 14 deletions

@ -1 +1 @@
Subproject commit 4b4d9c54b8218aa2297dbd457e3747091570f0d2 Subproject commit 42783ea4f3b118b2b0f3266efb53f9b4384f069b

View file

@ -1,6 +1,7 @@
#include <scwx/qt/model/marker_model.hpp> #include <scwx/qt/model/marker_model.hpp>
#include <scwx/qt/manager/marker_manager.hpp> #include <scwx/qt/manager/marker_manager.hpp>
#include <scwx/qt/main/application.hpp> #include <scwx/qt/main/application.hpp>
#include <scwx/qt/util/color.hpp>
#include <filesystem> #include <filesystem>
#include <fstream> #include <fstream>
@ -30,6 +31,9 @@ static std::mutex initializedMutex {};
static std::condition_variable initializedCond {}; static std::condition_variable initializedCond {};
static bool initialized; static bool initialized;
static const boost::gil::rgba8_pixel_t defaultIconColor =
util::color::ToRgba8PixelT("#ffff0000");
void CompareFiles(const std::string& file1, const std::string& file2) void CompareFiles(const std::string& file1, const std::string& file2)
{ {
std::ifstream ifs1 {file1}; std::ifstream ifs1 {file1};
@ -49,8 +53,7 @@ void CopyFile(const std::string& from, const std::string& to)
CompareFiles(from, to); CompareFiles(from, to);
} }
typedef void TestFunction(std::shared_ptr<manager::MarkerManager> manager, using TestFunction = void (std::shared_ptr<manager::MarkerManager>, MarkerModel &);
MarkerModel& model);
void RunTest(const std::string& filename, TestFunction testFunction) void RunTest(const std::string& filename, TestFunction testFunction)
{ {
@ -65,7 +68,7 @@ void RunTest(const std::string& filename, TestFunction testFunction)
initialized = false; initialized = false;
QObject::connect(manager.get(), QObject::connect(manager.get(),
&manager::MarkerManager::MarkersInitialized, &manager::MarkerManager::MarkersInitialized,
[](size_t count) []()
{ {
std::unique_lock lock(initializedMutex); std::unique_lock lock(initializedMutex);
initialized = true; initialized = true;
@ -119,7 +122,7 @@ TEST(MarkerModelTest, AddRemove)
RunTest(ONE_MARKERS_FILE, RunTest(ONE_MARKERS_FILE,
[](std::shared_ptr<manager::MarkerManager> manager, MarkerModel&) [](std::shared_ptr<manager::MarkerManager> manager, MarkerModel&)
{ manager->add_marker(types::MarkerInfo("Null", 0, 0)); }); { manager->add_marker(types::MarkerInfo("Null", 0, 0, "images/location-marker", defaultIconColor)); });
RunTest( RunTest(
EMPTY_MARKERS_FILE, EMPTY_MARKERS_FILE,
[](std::shared_ptr<manager::MarkerManager> manager, MarkerModel& model) [](std::shared_ptr<manager::MarkerManager> manager, MarkerModel& model)
@ -143,11 +146,11 @@ TEST(MarkerModelTest, AddFive)
RunTest(FIVE_MARKERS_FILE, RunTest(FIVE_MARKERS_FILE,
[](std::shared_ptr<manager::MarkerManager> manager, MarkerModel&) [](std::shared_ptr<manager::MarkerManager> manager, MarkerModel&)
{ {
manager->add_marker(types::MarkerInfo("Null", 0, 0)); manager->add_marker(types::MarkerInfo("Null", 0, 0, "images/location-marker", defaultIconColor));
manager->add_marker(types::MarkerInfo("North", 90, 0)); manager->add_marker(types::MarkerInfo("North", 90, 0, "images/location-marker", defaultIconColor));
manager->add_marker(types::MarkerInfo("South", -90, 0)); manager->add_marker(types::MarkerInfo("South", -90, 0, "images/location-marker", defaultIconColor));
manager->add_marker(types::MarkerInfo("East", 0, 90)); manager->add_marker(types::MarkerInfo("East", 0, 90, "images/location-marker", defaultIconColor));
manager->add_marker(types::MarkerInfo("West", 0, -90)); manager->add_marker(types::MarkerInfo("West", 0, -90, "images/location-marker", defaultIconColor));
}); });
std::filesystem::remove(TEMP_MARKERS_FILE); std::filesystem::remove(TEMP_MARKERS_FILE);
@ -161,10 +164,10 @@ TEST(MarkerModelTest, AddFour)
RunTest(FIVE_MARKERS_FILE, RunTest(FIVE_MARKERS_FILE,
[](std::shared_ptr<manager::MarkerManager> manager, MarkerModel&) [](std::shared_ptr<manager::MarkerManager> manager, MarkerModel&)
{ {
manager->add_marker(types::MarkerInfo("North", 90, 0)); manager->add_marker(types::MarkerInfo("North", 90, 0, "images/location-marker", defaultIconColor));
manager->add_marker(types::MarkerInfo("South", -90, 0)); manager->add_marker(types::MarkerInfo("South", -90, 0, "images/location-marker", defaultIconColor));
manager->add_marker(types::MarkerInfo("East", 0, 90)); manager->add_marker(types::MarkerInfo("East", 0, 90, "images/location-marker", defaultIconColor));
manager->add_marker(types::MarkerInfo("West", 0, -90)); manager->add_marker(types::MarkerInfo("West", 0, -90, "images/location-marker", defaultIconColor));
}); });
std::filesystem::remove(TEMP_MARKERS_FILE); std::filesystem::remove(TEMP_MARKERS_FILE);