diff --git a/tests/test_Utils.cpp b/tests/test_Utils.cpp
index 7b6b947..e12bc16 100644
--- a/tests/test_Utils.cpp
+++ b/tests/test_Utils.cpp
@@ -93,7 +93,7 @@
     auto ret = findFiles(hwmonDir, R"(in\d+_input)", foundPaths);
 
     EXPECT_TRUE(ret);
-    EXPECT_EQ(foundPaths.size(), 0u);
+    EXPECT_EQ(foundPaths.size(), 0U);
 }
 
 TEST_F(TestUtils, findFiles_in_hwmon_match)
@@ -102,7 +102,7 @@
     auto ret = findFiles(hwmonDir, R"(temp\d+_input)", foundPaths);
 
     EXPECT_TRUE(ret);
-    EXPECT_EQ(foundPaths.size(), 2u);
+    EXPECT_EQ(foundPaths.size(), 2U);
 }
 
 TEST_F(TestUtils, findFiles_in_peci_no_match)
@@ -123,7 +123,7 @@
         findFiles(peciDir, R"(peci-\d+/\d+-.+/peci-.+/hwmon/hwmon\d+/name$)",
                   foundPaths, 6);
     EXPECT_TRUE(ret);
-    EXPECT_EQ(foundPaths.size(), 1u);
+    EXPECT_EQ(foundPaths.size(), 1U);
 
     foundPaths.clear();
 
@@ -131,7 +131,7 @@
                     R"(peci-\d+/\d+-.+/peci-.+/hwmon/hwmon\d+/temp\d+_input)",
                     foundPaths, 6);
     EXPECT_TRUE(ret);
-    EXPECT_EQ(foundPaths.size(), 3u);
+    EXPECT_EQ(foundPaths.size(), 3U);
 }
 
 TEST_F(TestUtils, findFiles_hwmonPath_end_with_slash)
@@ -141,7 +141,7 @@
     auto ret = findFiles(p, R"(temp\d+_input)", foundPaths);
 
     EXPECT_TRUE(ret);
-    EXPECT_EQ(foundPaths.size(), 2u);
+    EXPECT_EQ(foundPaths.size(), 2U);
 }
 
 TEST_F(TestUtils, findFiles_peciPath_end_with_slash)
@@ -153,7 +153,7 @@
                   foundPaths, 6);
 
     EXPECT_TRUE(ret);
-    EXPECT_EQ(foundPaths.size(), 3u);
+    EXPECT_EQ(foundPaths.size(), 3U);
 }
 
 TEST_F(TestUtils, findFiles_in_sub_peci_match)
@@ -163,7 +163,7 @@
         findFiles(peciDir / "peci-0", R"(\d+-.+/peci-.+/hwmon/hwmon\d+/name$)",
                   foundPaths, 5);
     EXPECT_TRUE(ret);
-    EXPECT_EQ(foundPaths.size(), 1u);
+    EXPECT_EQ(foundPaths.size(), 1U);
 
     foundPaths.clear();
 
@@ -171,5 +171,5 @@
                     R"(\d+-.+/peci-.+/hwmon/hwmon\d+/temp\d+_input)",
                     foundPaths, 5);
     EXPECT_TRUE(ret);
-    EXPECT_EQ(foundPaths.size(), 3u);
+    EXPECT_EQ(foundPaths.size(), 3U);
 }
