fix: encapsulate OpenGL types in VertexAttribute to eliminate raw GL API usage in tests
- Add VertexAttributeType and VertexAttributeNormalized enums in OpenGLVertexArray.h - Add ToGLAttributeType() converter in OpenGLVertexArray.cpp - Remove glActiveTexture() call from quad test (already handled by texture.Bind()) - Remove #include <glad/glad.h> from triangle test - Update unit tests to use encapsulated enums All three OpenGL integration tests (minimal, triangle, quad) pass with 0% pixel difference.
This commit is contained in:
@@ -25,8 +25,8 @@ TEST_F(OpenGLTestFixture, VertexArray_AddVertexBuffer) {
|
||||
VertexAttribute attr;
|
||||
attr.index = 0;
|
||||
attr.count = 3;
|
||||
attr.type = GL_FLOAT;
|
||||
attr.normalized = false;
|
||||
attr.type = VertexAttributeType::Float;
|
||||
attr.normalized = VertexAttributeNormalized::False;
|
||||
attr.stride = sizeof(float) * 3;
|
||||
attr.offset = 0;
|
||||
|
||||
@@ -84,16 +84,16 @@ TEST_F(OpenGLTestFixture, VertexArray_Bind_MultipleAttributes) {
|
||||
VertexAttribute attrPos;
|
||||
attrPos.index = 0;
|
||||
attrPos.count = 2;
|
||||
attrPos.type = GL_FLOAT;
|
||||
attrPos.normalized = false;
|
||||
attrPos.type = VertexAttributeType::Float;
|
||||
attrPos.normalized = VertexAttributeNormalized::False;
|
||||
attrPos.stride = sizeof(float) * 2;
|
||||
attrPos.offset = 0;
|
||||
|
||||
VertexAttribute attrColor;
|
||||
attrColor.index = 1;
|
||||
attrColor.count = 4;
|
||||
attrColor.type = GL_FLOAT;
|
||||
attrColor.normalized = false;
|
||||
attrColor.type = VertexAttributeType::Float;
|
||||
attrColor.normalized = VertexAttributeNormalized::False;
|
||||
attrColor.stride = sizeof(float) * 4;
|
||||
attrColor.offset = 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user