- Applied clang-format to fix formatting violations in TUI and other source files - Updated CMakeLists.txt to exclude src/lib/* from format targets to prevent third-party library violations - Fixes clang-format violations in chat_tui.cc, tui.cc, and unified_layout.cc - All source files now pass format-check target 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
88 lines
2.2 KiB
C++
88 lines
2.2 KiB
C++
#include "gtest/gtest.h"
|
|
#include "zelda3/dungeon/object_parser.h"
|
|
|
|
namespace yaze {
|
|
namespace test {
|
|
|
|
class ObjectParserStructsTest : public ::testing::Test {
|
|
protected:
|
|
void SetUp() override {}
|
|
};
|
|
|
|
TEST_F(ObjectParserStructsTest, ObjectRoutineInfoDefaultConstructor) {
|
|
zelda3::ObjectRoutineInfo info;
|
|
|
|
EXPECT_EQ(info.routine_ptr, 0);
|
|
EXPECT_EQ(info.tile_ptr, 0);
|
|
EXPECT_EQ(info.tile_count, 0);
|
|
EXPECT_FALSE(info.is_repeatable);
|
|
EXPECT_FALSE(info.is_orientation_dependent);
|
|
}
|
|
|
|
TEST_F(ObjectParserStructsTest, ObjectSubtypeInfoDefaultConstructor) {
|
|
zelda3::ObjectSubtypeInfo info;
|
|
|
|
EXPECT_EQ(info.subtype, 0);
|
|
EXPECT_EQ(info.subtype_ptr, 0);
|
|
EXPECT_EQ(info.routine_ptr, 0);
|
|
EXPECT_EQ(info.max_tile_count, 0);
|
|
}
|
|
|
|
TEST_F(ObjectParserStructsTest, ObjectSizeInfoDefaultConstructor) {
|
|
zelda3::ObjectSizeInfo info;
|
|
|
|
EXPECT_EQ(info.width_tiles, 0);
|
|
EXPECT_EQ(info.height_tiles, 0);
|
|
EXPECT_TRUE(info.is_horizontal);
|
|
EXPECT_FALSE(info.is_repeatable);
|
|
EXPECT_EQ(info.repeat_count, 1);
|
|
}
|
|
|
|
TEST_F(ObjectParserStructsTest, ObjectRoutineInfoAssignment) {
|
|
zelda3::ObjectRoutineInfo info;
|
|
|
|
info.routine_ptr = 0x12345;
|
|
info.tile_ptr = 0x67890;
|
|
info.tile_count = 8;
|
|
info.is_repeatable = true;
|
|
info.is_orientation_dependent = true;
|
|
|
|
EXPECT_EQ(info.routine_ptr, 0x12345);
|
|
EXPECT_EQ(info.tile_ptr, 0x67890);
|
|
EXPECT_EQ(info.tile_count, 8);
|
|
EXPECT_TRUE(info.is_repeatable);
|
|
EXPECT_TRUE(info.is_orientation_dependent);
|
|
}
|
|
|
|
TEST_F(ObjectParserStructsTest, ObjectSubtypeInfoAssignment) {
|
|
zelda3::ObjectSubtypeInfo info;
|
|
|
|
info.subtype = 2;
|
|
info.subtype_ptr = 0x83F0;
|
|
info.routine_ptr = 0x8470;
|
|
info.max_tile_count = 16;
|
|
|
|
EXPECT_EQ(info.subtype, 2);
|
|
EXPECT_EQ(info.subtype_ptr, 0x83F0);
|
|
EXPECT_EQ(info.routine_ptr, 0x8470);
|
|
EXPECT_EQ(info.max_tile_count, 16);
|
|
}
|
|
|
|
TEST_F(ObjectParserStructsTest, ObjectSizeInfoAssignment) {
|
|
zelda3::ObjectSizeInfo info;
|
|
|
|
info.width_tiles = 4;
|
|
info.height_tiles = 2;
|
|
info.is_horizontal = false;
|
|
info.is_repeatable = true;
|
|
info.repeat_count = 3;
|
|
|
|
EXPECT_EQ(info.width_tiles, 4);
|
|
EXPECT_EQ(info.height_tiles, 2);
|
|
EXPECT_FALSE(info.is_horizontal);
|
|
EXPECT_TRUE(info.is_repeatable);
|
|
EXPECT_EQ(info.repeat_count, 3);
|
|
}
|
|
|
|
} // namespace test
|
|
} // namespace yaze
|