diff --git a/tests/test_font.cc b/tests/test_font.cc index fdd9c22..54f8d16 100644 --- a/tests/test_font.cc +++ b/tests/test_font.cc @@ -70,7 +70,7 @@ BEGIN_TEST(int, char*[]) { // Metrics - EXPECT_EQUAL(font.GetHeight(), 36); + EXPECT_TRUE(font.GetHeight() == 35 || font.GetHeight() == 36); EXPECT_EQUAL(font.GetAscent(), 28); EXPECT_EQUAL(font.GetDescent(), -7); EXPECT_EQUAL(font.GetLineSkip(), 35); @@ -105,6 +105,10 @@ BEGIN_TEST(int, char*[]) #endif } + auto isAllowedAADims = [](const Point& p) { + return p == Point(43, 35) || p == Point(43, 36); + }; + { // Glyph metrics int minx, maxx, miny, maxy, advance; @@ -124,24 +128,24 @@ BEGIN_TEST(int, char*[]) EXPECT_EQUAL(font.GetGlyphAdvance(u'A'), 21); // Text size - EXPECT_EQUAL(font.GetSizeText("AA"), Point(43, 36)); - EXPECT_EQUAL(font.GetSizeUTF8(u8"AA"), Point(43, 36)); - EXPECT_EQUAL(font.GetSizeUNICODE(u"AA"), Point(43, 36)); + EXPECT_TRUE(isAllowedAADims(font.GetSizeText("AA"))); + EXPECT_TRUE(isAllowedAADims(font.GetSizeUTF8(u8"AA"))); + EXPECT_TRUE(isAllowedAADims(font.GetSizeUNICODE(u"AA"))); } { // Rendering // XXX: add real pixel color tests - EXPECT_EQUAL(font.RenderText_Solid("AA", SDL_Color{255, 255, 255, 255}).GetSize(), Point(43, 36)); - EXPECT_EQUAL(font.RenderUTF8_Solid(u8"AA", SDL_Color{255, 255, 255, 255}).GetSize(), Point(43, 36)); - EXPECT_EQUAL(font.RenderUNICODE_Solid(u"AA", SDL_Color{255, 255, 255, 255}).GetSize(), Point(43, 36)); + EXPECT_TRUE(isAllowedAADims(font.RenderText_Solid("AA", SDL_Color{255, 255, 255, 255}).GetSize())); + EXPECT_TRUE(isAllowedAADims(font.RenderUTF8_Solid(u8"AA", SDL_Color{255, 255, 255, 255}).GetSize())); + EXPECT_TRUE(isAllowedAADims(font.RenderUNICODE_Solid(u"AA", SDL_Color{255, 255, 255, 255}).GetSize())); - EXPECT_EQUAL(font.RenderText_Shaded("AA", SDL_Color{255, 255, 255, 255}, SDL_Color{0, 0, 0, 255}).GetSize(), Point(43, 36)); - EXPECT_EQUAL(font.RenderUTF8_Shaded(u8"AA", SDL_Color{255, 255, 255, 255}, SDL_Color{0, 0, 0, 255}).GetSize(), Point(43, 36)); - EXPECT_EQUAL(font.RenderUNICODE_Shaded(u"AA", SDL_Color{255, 255, 255, 255}, SDL_Color{0, 0, 0, 255}).GetSize(), Point(43, 36)); + EXPECT_TRUE(isAllowedAADims(font.RenderText_Shaded("AA", SDL_Color{255, 255, 255, 255}, SDL_Color{0, 0, 0, 255}).GetSize())); + EXPECT_TRUE(isAllowedAADims(font.RenderUTF8_Shaded(u8"AA", SDL_Color{255, 255, 255, 255}, SDL_Color{0, 0, 0, 255}).GetSize())); + EXPECT_TRUE(isAllowedAADims(font.RenderUNICODE_Shaded(u"AA", SDL_Color{255, 255, 255, 255}, SDL_Color{0, 0, 0, 255}).GetSize())); - EXPECT_EQUAL(font.RenderText_Blended("AA", SDL_Color{255, 255, 255, 255}).GetSize(), Point(43, 36)); - EXPECT_EQUAL(font.RenderUTF8_Blended(u8"AA", SDL_Color{255, 255, 255, 255}).GetSize(), Point(43, 36)); - EXPECT_EQUAL(font.RenderUNICODE_Blended(u"AA", SDL_Color{255, 255, 255, 255}).GetSize(), Point(43, 36)); + EXPECT_TRUE(isAllowedAADims(font.RenderText_Blended("AA", SDL_Color{255, 255, 255, 255}).GetSize())); + EXPECT_TRUE(isAllowedAADims(font.RenderUTF8_Blended(u8"AA", SDL_Color{255, 255, 255, 255}).GetSize())); + EXPECT_TRUE(isAllowedAADims(font.RenderUNICODE_Blended(u"AA", SDL_Color{255, 255, 255, 255}).GetSize())); } END_TEST()