diff --git a/test/data_mock.hpp b/test/data_mock.hpp
index 44c3aae..ae8c9c7 100644
--- a/test/data_mock.hpp
+++ b/test/data_mock.hpp
@@ -15,8 +15,8 @@
     MOCK_METHOD0(open, bool());
     MOCK_METHOD0(close, bool());
     MOCK_METHOD1(copyFrom, std::vector<std::uint8_t>(std::uint32_t));
-    MOCK_METHOD1(write, bool(const std::vector<std::uint8_t>&));
-    MOCK_METHOD0(read, std::vector<std::uint8_t>());
+    MOCK_METHOD1(writeMeta, bool(const std::vector<std::uint8_t>&));
+    MOCK_METHOD0(readMeta, std::vector<std::uint8_t>());
 };
 
 } // namespace blobs
diff --git a/test/firmware_sessionstat_unittest.cpp b/test/firmware_sessionstat_unittest.cpp
index 42f67e6..4f6584f 100644
--- a/test/firmware_sessionstat_unittest.cpp
+++ b/test/firmware_sessionstat_unittest.cpp
@@ -83,7 +83,7 @@
     int size = 512;
     EXPECT_CALL(imageMock2, getSize()).WillOnce(Return(size));
     std::vector<std::uint8_t> mBytes = {0x01, 0x02};
-    EXPECT_CALL(dataMock, read()).WillOnce(Return(mBytes));
+    EXPECT_CALL(dataMock, readMeta()).WillOnce(Return(mBytes));
 
     struct BlobMeta meta;
     EXPECT_TRUE(handler->stat(0, &meta));
diff --git a/test/firmware_writemeta_unittest.cpp b/test/firmware_writemeta_unittest.cpp
index 869ed48..4e8cd45 100644
--- a/test/firmware_writemeta_unittest.cpp
+++ b/test/firmware_writemeta_unittest.cpp
@@ -71,7 +71,7 @@
 
     std::vector<std::uint8_t> bytes = {0x01, 0x02, 0x03, 0x04};
 
-    EXPECT_CALL(dataMock, write(Eq(bytes))).WillOnce(Return(true));
+    EXPECT_CALL(dataMock, writeMeta(Eq(bytes))).WillOnce(Return(true));
     EXPECT_TRUE(handler->writeMeta(0, 0, bytes));
 }
 
