diff --git a/src/test/CMakeLists.txt b/src/test/CMakeLists.txt index 09c7589b..46293d1a 100644 --- a/src/test/CMakeLists.txt +++ b/src/test/CMakeLists.txt @@ -8,6 +8,7 @@ add_executable( test/gfx/compression_test.cc test/gfx/snes_palette_test.cc test/integration/test_editor.cc + test/zelda3/overworld_test.cc test/zelda3/sprite_builder_test.cc cli/command_handler.cc app/rom.cc diff --git a/src/test/zelda3/overworld_test.cc b/src/test/zelda3/overworld_test.cc new file mode 100644 index 00000000..da72e6d0 --- /dev/null +++ b/src/test/zelda3/overworld_test.cc @@ -0,0 +1,35 @@ +#include "app/zelda3/overworld/overworld.h" + +#include +#include + +#include "app/rom.h" +#include "app/zelda3/overworld/overworld_map.h" + +namespace yaze { +namespace test { +namespace zelda3 { + +class OverworldTest : public ::testing::Test { + protected: + void SetUp() override {} + void TearDown() override {} + + app::zelda3::overworld::Overworld overworld_; +}; + +TEST_F(OverworldTest, OverworldLoadNoRomDataError) { + // Arrange + app::Rom rom; + + // Act + auto status = overworld_.Load(rom); + + // Assert + EXPECT_FALSE(status.ok()); + EXPECT_THAT(status.message(), testing::HasSubstr("ROM file not loaded")); +} + +} // namespace zelda3 +} // namespace test +} // namespace yaze