65TEST(SnesColorTest, ConvertSnesToRGB_Binary) {
66 uint16_t red = 0b0000000000011111;
67 uint16_t blue = 0b0111110000000000;
68 uint16_t green = 0b0000001111100000;
69 uint16_t purple = 0b0111110000011111;
72 testcolor = ConvertSnesToRgb(red);
73 ASSERT_EQ(0xFF0000, test_convert(testcolor));
74 testcolor = ConvertSnesToRgb(green);
75 ASSERT_EQ(0x00FF00, test_convert(testcolor));
76 testcolor = ConvertSnesToRgb(blue);
77 ASSERT_EQ(0x0000FF, test_convert(testcolor));
78 testcolor = ConvertSnesToRgb(purple);
79 ASSERT_EQ(0xFF00FF, test_convert(testcolor));
82TEST(SnesColorTest, Extraction) {
84 char data[8] = {0x1F, 0x00, 0x00, 0x7C,
static_cast<char>(0xE0),
86 auto pal = Extract(data, 0, 4);
87 ASSERT_EQ(4, pal.size());
88 ASSERT_EQ(0xFF0000, test_convert(pal[0]));
89 ASSERT_EQ(0x0000FF, test_convert(pal[1]));
90 ASSERT_EQ(0x00FF00, test_convert(pal[2]));
91 ASSERT_EQ(0xFF00FF, test_convert(pal[3]));
94TEST(SnesColorTest, Convert) {
96 char data[10] = {0x1F,
100 static_cast<char>(0xE0),
104 static_cast<char>(0xFF),
106 auto pal = Extract(data, 0, 5);
108 EXPECT_EQ(10, snes_string.size());
109 EXPECT_THAT(data, ElementsAreArray(snes_string.data(), 10));