Index: native_client_sdk/src/tests/nacl_io_test/fuse_fs_test.cc |
diff --git a/native_client_sdk/src/tests/nacl_io_test/fuse_fs_test.cc b/native_client_sdk/src/tests/nacl_io_test/fuse_fs_test.cc |
index a75246d8f9d441fbbe0961b37a95a124ee82f312..962ca811921a7f60dbdc0529f17724f607c4cd51 100644 |
--- a/native_client_sdk/src/tests/nacl_io_test/fuse_fs_test.cc |
+++ b/native_client_sdk/src/tests/nacl_io_test/fuse_fs_test.cc |
@@ -222,9 +222,14 @@ TEST_F(FuseFsTest, OpenAndRead) { |
int bytes_read = 0; |
HandleAttr attr; |
ASSERT_EQ(0, node->Read(attr, &buffer[0], sizeof(buffer), &bytes_read)); |
- // FUSE always fills the buffer (padding with \0) unless in direct_io mode. |
- ASSERT_EQ(sizeof(buffer), bytes_read); |
+ ASSERT_EQ(strlen(hello_world), bytes_read); |
ASSERT_STREQ(hello_world, buffer); |
+ |
+ // Try to read past the end of the file. |
+ attr.offs = strlen(hello_world) - 7; |
+ ASSERT_EQ(0, node->Read(attr, &buffer[0], sizeof(buffer), &bytes_read)); |
+ ASSERT_EQ(7, bytes_read); |
+ ASSERT_STREQ("World!\n", buffer); |
} |
TEST_F(FuseFsTest, CreateAndWrite) { |
@@ -241,8 +246,7 @@ TEST_F(FuseFsTest, CreateAndWrite) { |
char buffer[40] = {0}; |
int bytes_read = 0; |
ASSERT_EQ(0, node->Read(attr, &buffer[0], sizeof(buffer), &bytes_read)); |
- // FUSE always fills the buffer (padding with \0) unless in direct_io mode. |
- ASSERT_EQ(sizeof(buffer), bytes_read); |
+ ASSERT_EQ(strlen(message), bytes_read); |
ASSERT_STREQ(message, buffer); |
} |
@@ -349,7 +353,7 @@ TEST_F(KernelProxyFuseTest, Basic) { |
char buffer[30]; |
memset(buffer, 0, sizeof(buffer)); |
- ASSERT_EQ(sizeof(buffer), ki_read(fd, buffer, sizeof(buffer))); |
+ ASSERT_EQ(sizeof(hello_world), ki_read(fd, buffer, sizeof(buffer))); |
EXPECT_STREQ(hello_world, buffer); |
EXPECT_EQ(0, ki_close(fd)); |
} |