diff --git a/test/fanpwm_unittest.cpp b/test/fanpwm_unittest.cpp
index b42c76d..06bec89 100644
--- a/test/fanpwm_unittest.cpp
+++ b/test/fanpwm_unittest.cpp
@@ -39,11 +39,11 @@
         EXPECT_CALL(*sdbus_mock,
                     sd_bus_emit_properties_changed_strv(IsNull(), StrEq(path),
                                                         StrEq(intf), NotNull()))
-            .WillOnce(Invoke([=](sd_bus* bus, const char* path,
-                                 const char* interface, char** names) {
-                EXPECT_STREQ(property.c_str(), names[0]);
-                return 0;
-            }));
+            .WillOnce(
+                Invoke([=](sd_bus*, const char*, const char*, char** names) {
+                    EXPECT_STREQ(property.c_str(), names[0]);
+                    return 0;
+                }));
     }
 
     return;
@@ -139,8 +139,7 @@
     EXPECT_CALL(sdbus_mock,
                 sd_bus_emit_properties_changed_strv(
                     IsNull(), StrEq("asdf"), StrEq(FanPwmIntf), NotNull()))
-        .WillOnce(Invoke([&](sd_bus* bus, const char* path,
-                             const char* interface, char** names) {
+        .WillOnce(Invoke([&](sd_bus*, const char*, const char*, char** names) {
             EXPECT_EQ(0, strncmp("Target", names[0], 6));
             return 0;
         }));
diff --git a/test/sensor_unittest.cpp b/test/sensor_unittest.cpp
index 3a446b2..15a4807 100644
--- a/test/sensor_unittest.cpp
+++ b/test/sensor_unittest.cpp
@@ -88,7 +88,7 @@
     EXPECT_CALL(env::mockEnv, get(StrEq("GPIO_temp5"))).WillOnce(Return("5"));
 
     EXPECT_CALL(gMock, build(StrEq("chipA"), StrEq("5")))
-        .WillOnce(Invoke([&](const std::string& chip, const std::string& line) {
+        .WillOnce(Invoke([&](const std::string&, const std::string&) {
             return std::move(handleMock);
         }));
 
