@@ -12,11 +12,11 @@ TEST(ColorTest, DefaultConstructor) {
1212 EXPECT_FLOAT_EQ (color0.b , 0 .0f );
1313 EXPECT_FLOAT_EQ (color0.a , 0 .0f );
1414
15- constexpr gf::Color ccolor0 ;
16- static_assert (ccolor0 .r == 0 .0f , " Check Color " );
17- static_assert (ccolor0 .g == 0 .0f , " Check Color " );
18- static_assert (ccolor0 .b == 0 .0f , " Check Color " );
19- static_assert (ccolor0 .a == 0 .0f , " Check Color " );
15+ constexpr gf::Color Color0 ;
16+ static_assert (Color0 .r == 0 .0f );
17+ static_assert (Color0 .g == 0 .0f );
18+ static_assert (Color0 .b == 0 .0f );
19+ static_assert (Color0 .a == 0 .0f );
2020}
2121
2222TEST (ColorTest, Constructor) {
@@ -34,17 +34,17 @@ TEST(ColorTest, Constructor) {
3434 EXPECT_FLOAT_EQ (color1.b , 1 .0f );
3535 EXPECT_FLOAT_EQ (color1.a , 0 .5f );
3636
37- constexpr gf::Color ccolor0 (0 .0f , 0 .5f , 1 .0f );
38- static_assert (ccolor0 .r == 0 .0f , " Check Color " );
39- static_assert (ccolor0 .g == 0 .5f , " Check Color " );
40- static_assert (ccolor0 .b == 1 .0f , " Check Color " );
41- static_assert (ccolor0 .a == 1 .0f , " Check Color " );
42-
43- constexpr gf::Color ccolor1 (0 .0f , 0 .5f , 1 .0f , 0 .5f );
44- static_assert (ccolor1 .r == 0 .0f , " Check Color " );
45- static_assert (ccolor1 .g == 0 .5f , " Check Color " );
46- static_assert (ccolor1 .b == 1 .0f , " Check Color " );
47- static_assert (ccolor1 .a == 0 .5f , " Check Color " );
37+ constexpr gf::Color Color0 (0 .0f , 0 .5f , 1 .0f );
38+ static_assert (Color0 .r == 0 .0f );
39+ static_assert (Color0 .g == 0 .5f );
40+ static_assert (Color0 .b == 1 .0f );
41+ static_assert (Color0 .a == 1 .0f );
42+
43+ constexpr gf::Color Color1 (0 .0f , 0 .5f , 1 .0f , 0 .5f );
44+ static_assert (Color1 .r == 0 .0f );
45+ static_assert (Color1 .g == 0 .5f );
46+ static_assert (Color1 .b == 1 .0f );
47+ static_assert (Color1 .a == 0 .5f );
4848}
4949
5050TEST (ColorTest, Rgba) {
@@ -62,32 +62,32 @@ TEST(ColorTest, Rgba) {
6262 EXPECT_FLOAT_EQ (color1.b , 0 .0f );
6363 EXPECT_FLOAT_EQ (color1.a , 0 .0f );
6464
65- constexpr gf::Color ccolor0 (0x00FF00 );
66- static_assert (ccolor0 .r == 0 .0f , " Check Color " );
67- static_assert (ccolor0 .g == 1 .0f , " Check Color " );
68- static_assert (ccolor0 .b == 0 .0f , " Check Color " );
69- static_assert (ccolor0 .a == 1 .0f , " Check Color " );
70-
71- constexpr gf::Color ccolor1 (0x00FF00 , 0x00 );
72- static_assert (ccolor1 .r == 0 .0f , " Check Color " );
73- static_assert (ccolor1 .g == 1 .0f , " Check Color " );
74- static_assert (ccolor1 .b == 0 .0f , " Check Color " );
75- static_assert (ccolor1 .a == 0 .0f , " Check Color " );
65+ constexpr gf::Color Color0 (0x00FF00 );
66+ static_assert (Color0 .r == 0 .0f );
67+ static_assert (Color0 .g == 1 .0f );
68+ static_assert (Color0 .b == 0 .0f );
69+ static_assert (Color0 .a == 1 .0f );
70+
71+ constexpr gf::Color Color1 (0x00FF00 , 0x00 );
72+ static_assert (Color1 .r == 0 .0f );
73+ static_assert (Color1 .g == 1 .0f );
74+ static_assert (Color1 .b == 0 .0f );
75+ static_assert (Color1 .a == 0 .0f );
7676}
7777
7878TEST (ColorTest, Equality) {
79- gf::Color color0 (0x12345678 );
80- gf::Color color1 (0x12345678 );
81- gf::Color color2 (0x87654321 );
79+ gf::Color color0 (0x123456 , 0x78 );
80+ gf::Color color1 (0x123456 , 0x78 );
81+ gf::Color color2 (0x876543 , 0x21 );
8282
8383 EXPECT_EQ (color0, color1);
8484 EXPECT_NE (color0, color2);
8585
86- constexpr gf::Color ccolor0 ( 0x12345678 );
87- constexpr gf::Color ccolor1 ( 0x12345678 );
88- constexpr gf::Color ccolor2 ( 0x87654321 );
89- static_assert (ccolor0 == ccolor1, " Check Color " );
90- static_assert (ccolor0 != ccolor2, " Check Color " );
86+ constexpr gf::Color Color0 ( 0x123456 , 0x78 );
87+ constexpr gf::Color Color1 ( 0x123456 , 0x78 );
88+ constexpr gf::Color Color2 ( 0x876543 , 0x21 );
89+ static_assert (Color0 == Color1 );
90+ static_assert (Color0 != Color2 );
9191}
9292
9393TEST (ColorTest, Addition) {
@@ -104,11 +104,11 @@ TEST(ColorTest, Addition) {
104104 color1 += 0 .5f ;
105105 EXPECT_EQ (color1, gf::Color (1 .5f , 1 .0f , 0 .5f , 0 .5f ));
106106
107- constexpr gf::Color ccolor0 (0 .0f , 0 .5f , 1 .0f , 1 .0f );
108- constexpr gf::Color ccolor1 (1 .0f , 0 .5f , 0 .0f , 0 .0f );
109- static_assert (ccolor0 + ccolor1 == gf::Color (1 .0f , 1 .0f , 1 .0f , 1 .0f ), " Check Color " );
110- static_assert (ccolor0 + 0 .5f == gf::Color (0 .5f , 1 .0f , 1 .5f , 1 .5f ), " Check Color " );
111- static_assert (0 .5f + ccolor1 == gf::Color (1 .5f , 1 .0f , 0 .5f , 0 .5f ), " Check Color " );
107+ constexpr gf::Color Color0 (0 .0f , 0 .5f , 1 .0f , 1 .0f );
108+ constexpr gf::Color Color1 (1 .0f , 0 .5f , 0 .0f , 0 .0f );
109+ static_assert (Color0 + Color1 == gf::Color (1 .0f , 1 .0f , 1 .0f , 1 .0f ));
110+ static_assert (Color0 + 0 .5f == gf::Color (0 .5f , 1 .0f , 1 .5f , 1 .5f ));
111+ static_assert (0 .5f + Color1 == gf::Color (1 .5f , 1 .0f , 0 .5f , 0 .5f ));
112112}
113113
114114TEST (ColorTest, Substraction) {
@@ -125,18 +125,18 @@ TEST(ColorTest, Substraction) {
125125 color1 -= 0 .5f ;
126126 EXPECT_EQ (color1, gf::Color (0 .0f , 0 .0f , -0 .5f , -0 .5f ));
127127
128- constexpr gf::Color ccolor0 (1 .0f , 0 .5f , 1 .0f , 1 .0f );
129- constexpr gf::Color ccolor1 (0 .5f , 0 .5f , 0 .0f , 0 .0f );
130- static_assert (ccolor0 - ccolor1 == gf::Color (0 .5f , 0 .0f , 1 .0f , 1 .0f ), " Check Color " );
131- static_assert (ccolor0 - 0 .5f == gf::Color (0 .5f , 0 .0f , 0 .5f , 0 .5f ), " Check Color " );
132- static_assert (0 .5f - ccolor1 == gf::Color (0 .0f , 0 .0f , 0 .5f , 0 .5f ), " Check Color " );
128+ constexpr gf::Color Color0 (1 .0f , 0 .5f , 1 .0f , 1 .0f );
129+ constexpr gf::Color Color1 (0 .5f , 0 .5f , 0 .0f , 0 .0f );
130+ static_assert (Color0 - Color1 == gf::Color (0 .5f , 0 .0f , 1 .0f , 1 .0f ));
131+ static_assert (Color0 - 0 .5f == gf::Color (0 .5f , 0 .0f , 0 .5f , 0 .5f ));
132+ static_assert (0 .5f - Color1 == gf::Color (0 .0f , 0 .0f , 0 .5f , 0 .5f ));
133133}
134134
135135TEST (ColorTest, Multiplication) {
136136 gf::Color color0 (1 .0f , 1 .0f , 0 .5f , 0 .5f );
137137 gf::Color color1 (1 .0f , 0 .5f , 0 .5f , 1 .0f );
138138
139- EXPECT_EQ (color0* color1, gf::Color (1 .0f , 0 .5f , 0 .25f , 0 .5f ));
139+ EXPECT_EQ (color0 * color1, gf::Color (1 .0f , 0 .5f , 0 .25f , 0 .5f ));
140140 EXPECT_EQ (color0 * 0 .5f , gf::Color (0 .5f , 0 .5f , 0 .25f , 0 .25f ));
141141 EXPECT_EQ (0 .5f * color1, gf::Color (0 .5f , 0 .25f , 0 .25f , 0 .5f ));
142142
@@ -146,11 +146,11 @@ TEST(ColorTest, Multiplication) {
146146 color1 *= 0 .5f ;
147147 EXPECT_EQ (color1, gf::Color (0 .5f , 0 .25f , 0 .25f , 0 .5f ));
148148
149- constexpr gf::Color ccolor0 (1 .0f , 1 .0f , 0 .5f , 0 .5f );
150- constexpr gf::Color ccolor1 (1 .0f , 0 .5f , 0 .5f , 1 .0f );
151- static_assert (ccolor0 * ccolor1 == gf::Color (1 .0f , 0 .5f , 0 .25f , 0 .5f ), " Check Color " );
152- static_assert (ccolor0 * 0 .5f == gf::Color (0 .5f , 0 .5f , 0 .25f , 0 .25f ), " Check Color " );
153- static_assert (0 .5f * ccolor1 == gf::Color (0 .5f , 0 .25f , 0 .25f , 0 .5f ), " Check Color " );
149+ constexpr gf::Color Color0 (1 .0f , 1 .0f , 0 .5f , 0 .5f );
150+ constexpr gf::Color Color1 (1 .0f , 0 .5f , 0 .5f , 1 .0f );
151+ static_assert (Color0 * Color1 == gf::Color (1 .0f , 0 .5f , 0 .25f , 0 .5f ));
152+ static_assert (Color0 * 0 .5f == gf::Color (0 .5f , 0 .5f , 0 .25f , 0 .25f ));
153+ static_assert (0 .5f * Color1 == gf::Color (0 .5f , 0 .25f , 0 .25f , 0 .5f ));
154154}
155155
156156TEST (ColorTest, Division) {
@@ -167,11 +167,11 @@ TEST(ColorTest, Division) {
167167 color1 /= 0 .5f ;
168168 EXPECT_EQ (color1, gf::Color (2 .0f , 2 .0f , 1 .0f , 1 .0f ));
169169
170- constexpr gf::Color ccolor0 (1 .0f , 0 .5f , 0 .5f , 1 .0f );
171- constexpr gf::Color ccolor1 (1 .0f , 1 .0f , 0 .5f , 0 .5f );
172- static_assert (ccolor0 / ccolor1 == gf::Color (1 .0f , 0 .5f , 1 .0f , 2 .0f ), " Check Color " );
173- static_assert (ccolor0 / 0 .5f == gf::Color (2 .0f , 1 .0f , 1 .0f , 2 .0f ), " Check Color " );
174- static_assert (0 .5f / ccolor1 == gf::Color (0 .5f , 0 .5f , 1 .0f , 1 .0f ), " Check Color " );
170+ constexpr gf::Color Color0 (1 .0f , 0 .5f , 0 .5f , 1 .0f );
171+ constexpr gf::Color Color1 (1 .0f , 1 .0f , 0 .5f , 0 .5f );
172+ static_assert (Color0 / Color1 == gf::Color (1 .0f , 0 .5f , 1 .0f , 2 .0f ));
173+ static_assert (Color0 / 0 .5f == gf::Color (2 .0f , 1 .0f , 1 .0f , 2 .0f ));
174+ static_assert (0 .5f / Color1 == gf::Color (0 .5f , 0 .5f , 1 .0f , 1 .0f ));
175175}
176176
177177TEST (ColorTest, Opaque) {
@@ -186,9 +186,35 @@ TEST(ColorTest, Opaque) {
186186 gf::Color color = gf::opaque ();
187187 EXPECT_EQ (color.a , 0 .5f );
188188
189- constexpr gf::Color ccolor = gf::opaque (0 .3f );
190- static_assert (ccolor.r == 1 .0f , " Check Color" );
191- static_assert (ccolor.g == 1 .0f , " Check Color" );
192- static_assert (ccolor.b == 1 .0f , " Check Color" );
193- static_assert (ccolor.a == 0 .3f , " Check Color" );
189+ constexpr gf::Color Color = gf::opaque (0 .3f );
190+ static_assert (Color.r == 1 .0f );
191+ static_assert (Color.g == 1 .0f );
192+ static_assert (Color.b == 1 .0f );
193+ static_assert (Color.a == 0 .3f );
194+ }
195+
196+ TEST (ColorTest, ToRgba32) {
197+ gf::Color color0 (0x123456 , 0x78 );
198+ auto rgba = color0.to_rgba32 ();
199+ EXPECT_EQ (rgba[0 ], 0x12 );
200+ EXPECT_EQ (rgba[1 ], 0x34 );
201+ EXPECT_EQ (rgba[2 ], 0x56 );
202+ EXPECT_EQ (rgba[3 ], 0x78 );
203+
204+ constexpr gf::Color Color0 (0x123456 , 0x78 );
205+ constexpr auto Rgba = Color0.to_rgba32 ();
206+ static_assert (Rgba[0 ] == 0x12 );
207+ static_assert (Rgba[1 ] == 0x34 );
208+ static_assert (Rgba[2 ] == 0x56 );
209+ static_assert (Rgba[3 ] == 0x78 );
210+ }
211+
212+ TEST (ColorTest, ToHex) {
213+ gf::Color color0 (0x123456 , 0x78 );
214+ auto hex = color0.to_hex ();
215+ EXPECT_EQ (hex, 0x12345678 );
216+
217+ constexpr gf::Color Color0 (0x123456 , 0x78 );
218+ constexpr auto Hex = Color0.to_hex ();
219+ static_assert (Hex == 0x12345678 );
194220}
0 commit comments