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

Unified Diff: chrome/browser/drive/fake_drive_service_unittest.cc

Issue 445793003: Add permission check to FakeDriveService (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 4 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 | « chrome/browser/drive/fake_drive_service.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/drive/fake_drive_service_unittest.cc
diff --git a/chrome/browser/drive/fake_drive_service_unittest.cc b/chrome/browser/drive/fake_drive_service_unittest.cc
index 0facc8c09ec00fb6f89dbdceec147ea2b87e2678..7a16cc4882dbc3be4bedcd87c75314849e7a5b41 100644
--- a/chrome/browser/drive/fake_drive_service_unittest.cc
+++ b/chrome/browser/drive/fake_drive_service_unittest.cc
@@ -31,6 +31,7 @@ using google_apis::GDATA_OTHER_ERROR;
using google_apis::GDataErrorCode;
using google_apis::GetContentCallback;
using google_apis::HTTP_CREATED;
+using google_apis::HTTP_FORBIDDEN;
using google_apis::HTTP_NOT_FOUND;
using google_apis::HTTP_NO_CONTENT;
using google_apis::HTTP_PRECONDITION;
@@ -901,6 +902,21 @@ TEST_F(FakeDriveServiceTest, DeleteResource_Offline) {
EXPECT_EQ(GDATA_NO_CONNECTION, error);
}
+TEST_F(FakeDriveServiceTest, DeleteResource_Forbidden) {
+ ASSERT_TRUE(test_util::SetUpTestEntries(&fake_service_));
+
+ EXPECT_EQ(HTTP_SUCCESS, fake_service_.SetUserPermission(
+ "2_file_resource_id", google_apis::drive::PERMISSION_ROLE_READER));
+
+ GDataErrorCode error = GDATA_OTHER_ERROR;
+ fake_service_.DeleteResource("2_file_resource_id",
+ std::string(), // etag
+ test_util::CreateCopyResultCallback(&error));
+ base::RunLoop().RunUntilIdle();
+
+ EXPECT_EQ(HTTP_FORBIDDEN, error);
+}
+
TEST_F(FakeDriveServiceTest, TrashResource_ExistingFile) {
ASSERT_TRUE(test_util::SetUpTestEntries(&fake_service_));
@@ -947,6 +963,20 @@ TEST_F(FakeDriveServiceTest, TrashResource_Offline) {
EXPECT_EQ(GDATA_NO_CONNECTION, error);
}
+TEST_F(FakeDriveServiceTest, TrashResource_Forbidden) {
+ ASSERT_TRUE(test_util::SetUpTestEntries(&fake_service_));
+
+ EXPECT_EQ(HTTP_SUCCESS, fake_service_.SetUserPermission(
+ "2_file_resource_id", google_apis::drive::PERMISSION_ROLE_READER));
+
+ GDataErrorCode error = GDATA_OTHER_ERROR;
+ fake_service_.TrashResource("2_file_resource_id",
+ test_util::CreateCopyResultCallback(&error));
+ base::RunLoop().RunUntilIdle();
+
+ EXPECT_EQ(HTTP_FORBIDDEN, error);
+}
+
TEST_F(FakeDriveServiceTest, DownloadFile_ExistingFile) {
ASSERT_TRUE(test_util::SetUpTestEntries(&fake_service_));
@@ -1228,6 +1258,28 @@ TEST_F(FakeDriveServiceTest, UpdateResource_Offline) {
EXPECT_FALSE(entry);
}
+TEST_F(FakeDriveServiceTest, UpdateResource_Forbidden) {
+ ASSERT_TRUE(test_util::SetUpTestEntries(&fake_service_));
+
+ const std::string kResourceId = "2_file_resource_id";
+ EXPECT_EQ(HTTP_SUCCESS, fake_service_.SetUserPermission(
+ kResourceId, google_apis::drive::PERMISSION_ROLE_READER));
+
+ GDataErrorCode error = GDATA_OTHER_ERROR;
+ scoped_ptr<FileResource> entry;
+ fake_service_.UpdateResource(
+ kResourceId,
+ std::string(),
+ "new title",
+ base::Time(),
+ base::Time(),
+ test_util::CreateCopyResultCallback(&error, &entry));
+ base::RunLoop().RunUntilIdle();
+
+ EXPECT_EQ(HTTP_FORBIDDEN, error);
+ EXPECT_FALSE(entry);
+}
+
TEST_F(FakeDriveServiceTest, AddResourceToDirectory_FileInRootDirectory) {
ASSERT_TRUE(test_util::SetUpTestEntries(&fake_service_));
@@ -1648,6 +1700,26 @@ TEST_F(FakeDriveServiceTest, InitiateUploadExistingFile_Offline) {
EXPECT_TRUE(upload_location.is_empty());
}
+TEST_F(FakeDriveServiceTest, InitiateUploadExistingFile_Forbidden) {
+ ASSERT_TRUE(test_util::SetUpTestEntries(&fake_service_));
+
+ EXPECT_EQ(HTTP_SUCCESS, fake_service_.SetUserPermission(
+ "2_file_resource_id", google_apis::drive::PERMISSION_ROLE_READER));
+
+ GDataErrorCode error = GDATA_OTHER_ERROR;
+ GURL upload_location;
+ fake_service_.InitiateUploadExistingFile(
+ "test/foo",
+ 13,
+ "2_file_resource_id",
+ FakeDriveService::InitiateUploadExistingFileOptions(),
+ test_util::CreateCopyResultCallback(&error, &upload_location));
+ base::RunLoop().RunUntilIdle();
+
+ EXPECT_EQ(HTTP_FORBIDDEN, error);
+ EXPECT_TRUE(upload_location.is_empty());
+}
+
TEST_F(FakeDriveServiceTest, InitiateUploadExistingFile_NotFound) {
ASSERT_TRUE(test_util::SetUpTestEntries(&fake_service_));
« no previous file with comments | « chrome/browser/drive/fake_drive_service.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698