diff --git a/tests/src/test_generic_material_loader.cpp b/tests/src/test_generic_material_loader.cpp
index 5ce69ddd64d87681a20d4c2f9e2532a606dac15b..6df6755e937cf052c3ddc62422dd725c8be35b96 100644
--- a/tests/src/test_generic_material_loader.cpp
+++ b/tests/src/test_generic_material_loader.cpp
@@ -25,6 +25,8 @@
 #include "phx/resources/resource_utils.hpp"
 #include "phx/resources/types/material.hpp"
 
+#include "test_utilities/glm_vec3.hpp"
+
 SCENARIO("The Generic Material Loader can create Generic materials.",
          "[phx][phx::GenericMaterialLoader]") {
   GIVEN("A plain Generic Material Loader") {
@@ -41,23 +43,17 @@ SCENARIO("The Generic Material Loader can create Generic materials.",
           "The material is red, and specular color, ambient color and "
           "shininess are set to default values.") {
         auto diffuseColor = materialResource->GetDiffuseColor();
-        REQUIRE(diffuseColor[0] == 1.0f);
-        REQUIRE(diffuseColor[1] == 0.f);
-        REQUIRE(diffuseColor[2] == 0.f);
+        REQUIRE(diffuseColor == glm::vec3(1.0, 0.0, 0.0));
 
         auto specularColor = materialResource->GetSpecularColor();
         auto specularColorDefault =
             phx::Material::GetDefault()->GetSpecularColor();
-        REQUIRE(specularColor[0] == specularColorDefault[0]);
-        REQUIRE(specularColor[1] == specularColorDefault[1]);
-        REQUIRE(specularColor[2] == specularColorDefault[2]);
+        REQUIRE(specularColor == specularColorDefault);
 
         auto ambientColor = materialResource->GetAmbientColor();
         auto ambientColorDefault =
             phx::Material::GetDefault()->GetAmbientColor();
-        REQUIRE(ambientColor[0] == ambientColorDefault[0]);
-        REQUIRE(ambientColor[1] == ambientColorDefault[1]);
-        REQUIRE(ambientColor[2] == ambientColorDefault[2]);
+        REQUIRE(ambientColor == ambientColorDefault);
 
         float shininess = materialResource->GetShininess();
         REQUIRE(shininess == phx::Material::GetDefault()->GetShininess());
@@ -78,19 +74,13 @@ SCENARIO("The Generic Material Loader can create Generic materials.",
 
       THEN("All the values in the material are set to the right value.") {
         auto diffuseColor = secondMaterial->GetDiffuseColor();
-        REQUIRE(diffuseColor[0] == 0.4f);
-        REQUIRE(diffuseColor[1] == 0.3f);
-        REQUIRE(diffuseColor[2] == 0.55f);
+        REQUIRE(diffuseColor == glm::vec3(0.4f, 0.3f, 0.55f));
 
         auto specularColor = secondMaterial->GetSpecularColor();
-        REQUIRE(specularColor[0] == 0.48f);
-        REQUIRE(specularColor[1] == 0.42f);
-        REQUIRE(specularColor[2] == 0.88f);
+        REQUIRE(specularColor == glm::vec3(0.48f, 0.42f, 0.88f));
 
         auto ambientColor = secondMaterial->GetAmbientColor();
-        REQUIRE(ambientColor[0] == 0.11f);
-        REQUIRE(ambientColor[1] == 0.94f);
-        REQUIRE(ambientColor[2] == 0.73f);
+        REQUIRE(ambientColor == glm::vec3(0.11f, 0.94f, 0.73f));
 
         float shininess = secondMaterial->GetShininess();
         REQUIRE(shininess == 40.f);