20 {
21 auto mock_gles = MockGLES::Init(std::nullopt, "OpenGL ES 3.0");
22 EXPECT_TRUE(mock_gles->GetProcTable().GetDescription()->IsES());
23
26}
27
28TEST(ProcTableGLES, ResolvesCorrectClearDepthProcOnDesktopGL) {
29 auto mock_gles = MockGLES::Init(std::nullopt, "OpenGL 4.0");
30 EXPECT_FALSE(mock_gles->GetProcTable().GetDescription()->IsES());
31
34}
35
36TEST(GLErrorToString, ReturnsCorrectStringForKnownErrors) {
40 EXPECT_EQ(
GLErrorToString(GL_INVALID_OPERATION),
"GL_INVALID_OPERATION");
42 "GL_INVALID_FRAMEBUFFER_OPERATION");
44 "GL_FRAMEBUFFER_COMPLETE");
46}
47
48TEST(GLErrorToString, ReturnsUnknownForInvalidError) {
49
50 GLenum invalid_error = 0x9999;
52}
53
54TEST(GLErrorToString, ReturnValueIsValidStringView) {
55
57 EXPECT_FALSE(result.empty());
58 EXPECT_NE(result.data(), nullptr);
59
60
61 EXPECT_TRUE(result == "GL_NO_ERROR");
62}
63
64TEST(GLProc, NameFieldWorksWithStringView) {
65 GLProc<void()> proc;
66
67
68 const char* literal = "glTestFunction";
69 proc.name = literal;
70
71 EXPECT_EQ(proc.name, "glTestFunction");
72 EXPECT_FALSE(proc.name.empty());
73
74
75 EXPECT_EQ(proc.name.data(), literal);
76}
77
78}
79}
TEST(AsciiTableTest, Simple)
std::string_view GLErrorToString(GLenum value)
#define FOR_EACH_IMPELLER_DESKTOP_ONLY_PROC(PROC)
#define FOR_EACH_IMPELLER_ES_ONLY_PROC(PROC)
#define EXPECT_AVAILABLE(proc_ivar)
#define EXPECT_UNAVAILABLE(proc_ivar)