yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
object_parser_structs_test.cc
Go to the documentation of this file.
2
3#include "gtest/gtest.h"
4
5namespace yaze {
6namespace test {
7
8class ObjectParserStructsTest : public ::testing::Test {
9 protected:
10 void SetUp() override {}
11};
12
13TEST_F(ObjectParserStructsTest, ObjectRoutineInfoDefaultConstructor) {
15
16 EXPECT_EQ(info.routine_ptr, 0);
17 EXPECT_EQ(info.tile_ptr, 0);
18 EXPECT_EQ(info.tile_count, 0);
19 EXPECT_FALSE(info.is_repeatable);
20 EXPECT_FALSE(info.is_orientation_dependent);
21}
22
23TEST_F(ObjectParserStructsTest, ObjectSubtypeInfoDefaultConstructor) {
25
26 EXPECT_EQ(info.subtype, 0);
27 EXPECT_EQ(info.subtype_ptr, 0);
28 EXPECT_EQ(info.routine_ptr, 0);
29 EXPECT_EQ(info.max_tile_count, 0);
30}
31
32TEST_F(ObjectParserStructsTest, ObjectSizeInfoDefaultConstructor) {
34
35 EXPECT_EQ(info.width_tiles, 0);
36 EXPECT_EQ(info.height_tiles, 0);
37 EXPECT_TRUE(info.is_horizontal);
38 EXPECT_FALSE(info.is_repeatable);
39 EXPECT_EQ(info.repeat_count, 1);
40}
41
42TEST_F(ObjectParserStructsTest, ObjectRoutineInfoAssignment) {
44
45 info.routine_ptr = 0x12345;
46 info.tile_ptr = 0x67890;
47 info.tile_count = 8;
48 info.is_repeatable = true;
49 info.is_orientation_dependent = true;
50
51 EXPECT_EQ(info.routine_ptr, 0x12345);
52 EXPECT_EQ(info.tile_ptr, 0x67890);
53 EXPECT_EQ(info.tile_count, 8);
54 EXPECT_TRUE(info.is_repeatable);
55 EXPECT_TRUE(info.is_orientation_dependent);
56}
57
58TEST_F(ObjectParserStructsTest, ObjectSubtypeInfoAssignment) {
60
61 info.subtype = 2;
62 info.subtype_ptr = 0x83F0;
63 info.routine_ptr = 0x8470;
64 info.max_tile_count = 16;
65
66 EXPECT_EQ(info.subtype, 2);
67 EXPECT_EQ(info.subtype_ptr, 0x83F0);
68 EXPECT_EQ(info.routine_ptr, 0x8470);
69 EXPECT_EQ(info.max_tile_count, 16);
70}
71
72TEST_F(ObjectParserStructsTest, ObjectSizeInfoAssignment) {
74
75 info.width_tiles = 4;
76 info.height_tiles = 2;
77 info.is_horizontal = false;
78 info.is_repeatable = true;
79 info.repeat_count = 3;
80
81 EXPECT_EQ(info.width_tiles, 4);
82 EXPECT_EQ(info.height_tiles, 2);
83 EXPECT_FALSE(info.is_horizontal);
84 EXPECT_TRUE(info.is_repeatable);
85 EXPECT_EQ(info.repeat_count, 3);
86}
87
88} // namespace test
89} // namespace yaze
TEST_F(DungeonObjectRenderingE2ETests, RunAllTests)
Main namespace for the application.
Object routine information.
Object size and orientation information.
Object subtype information.