Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(193)

Unified Diff: native_client_sdk/src/tests/nacl_io_test/http_fs_test.cc

Issue 547713002: [NaCl SDK] nacl_io: Always create directory node in http filesystem root. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « native_client_sdk/src/libraries/nacl_io/node.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: native_client_sdk/src/tests/nacl_io_test/http_fs_test.cc
diff --git a/native_client_sdk/src/tests/nacl_io_test/http_fs_test.cc b/native_client_sdk/src/tests/nacl_io_test/http_fs_test.cc
index 307fb61fcb49744f57ae60d305630581ba30c3bb..a0d4bf56709a80b6b428912a73cbf317091ec56a 100644
--- a/native_client_sdk/src/tests/nacl_io_test/http_fs_test.cc
+++ b/native_client_sdk/src/tests/nacl_io_test/http_fs_test.cc
@@ -178,8 +178,7 @@ TEST_P(HttpFsTest, GetStat) {
struct stat statbuf;
EXPECT_EQ(0, node->GetStat(&statbuf));
- EXPECT_EQ(S_IFREG | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH,
- statbuf.st_mode);
+ EXPECT_EQ(S_IFREG | S_IRUSR | S_IRGRP | S_IROTH, statbuf.st_mode);
EXPECT_EQ(strlen(contents), statbuf.st_size);
// These are not currently set.
EXPECT_EQ(0, statbuf.st_atime);
@@ -253,8 +252,7 @@ TEST_P(HttpFsLargeFileTest, GetStat) {
struct stat statbuf;
EXPECT_EQ(0, node->GetStat(&statbuf));
- EXPECT_EQ(S_IFREG | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH,
- statbuf.st_mode);
+ EXPECT_EQ(S_IFREG | S_IRUSR | S_IRGRP | S_IROTH, statbuf.st_mode);
EXPECT_EQ(size, statbuf.st_size);
// These are not currently set.
EXPECT_EQ(0, statbuf.st_atime);
@@ -270,6 +268,21 @@ INSTANTIATE_TEST_CASE_P(Default,
::testing::Values((uint32_t)kStringMapParamCacheNone,
(uint32_t)kStringMapParamCacheStat));
+TEST(HttpFsDirTest, Root) {
+ StringMap_t args;
+ HttpFsForTesting fs(args, NULL);
+
+ // Check root node is directory
+ ScopedNode node;
+ ASSERT_EQ(0, fs.Open(Path("/"), O_RDONLY, &node));
+ ASSERT_TRUE(node->IsaDir());
+
+ // We have to r+w access to the root node
+ ASSERT_EQ(0, fs.Access(Path("/"), R_OK));
+ ASSERT_EQ(0, fs.Access(Path("/"), X_OK));
+ ASSERT_EQ(EACCES, fs.Access(Path("/"), W_OK));
+}
+
TEST(HttpFsDirTest, Mkdir) {
StringMap_t args;
HttpFsForTesting fs(args, NULL);
@@ -369,24 +382,30 @@ TEST(HttpFsDirTest, ParseManifest) {
}
TEST(HttpFsBlobUrlTest, Basic) {
- const char* kUrl =
- "blob:http%3A//example.com/6b87a5a6-713e-46a4-9f0c-78066406455d";
+ const char* kUrl = "blob:http%3A//example.com/6b87a5a6-713e";
+ const char* kContent = "hello";
FakePepperInterfaceURLLoader ppapi;
- ASSERT_TRUE(ppapi.server_template()->SetBlobEntity(kUrl, "", NULL));
+ ASSERT_TRUE(ppapi.server_template()->SetBlobEntity(kUrl, kContent, NULL));
StringMap_t args;
args["SOURCE"] = kUrl;
HttpFsForTesting fs(args, &ppapi);
- // We have to read from the mount root to read a Blob URL.
+ // Check access to root folder
ASSERT_EQ(0, fs.Access(Path("/"), R_OK));
ASSERT_EQ(EACCES, fs.Access(Path("/"), W_OK));
ASSERT_EQ(EACCES, fs.Access(Path("/"), X_OK));
// Any other path will fail.
ScopedNode foo;
- ASSERT_EQ(ENOENT, fs.Access(Path(""), R_OK));
- ASSERT_EQ(ENOENT, fs.Access(Path("."), R_OK));
- ASSERT_EQ(ENOENT, fs.Access(Path("blah"), R_OK));
+ ASSERT_EQ(ENOENT, fs.Access(Path("/blah"), R_OK));
+
+ // Verify file size
+ ScopedNode node;
+ struct stat statbuf;
+ ASSERT_EQ(0, fs.Open(Path("/"), O_RDONLY, &node));
+ ASSERT_EQ(0, node->GetStat(&statbuf));
+ ASSERT_EQ(0, node->GetStat(&statbuf));
+ ASSERT_EQ(strlen(kContent), statbuf.st_size);
}
« no previous file with comments | « native_client_sdk/src/libraries/nacl_io/node.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698