diff options
author | hashimoto@chromium.org <hashimoto@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-05 08:15:47 +0000 |
---|---|---|
committer | hashimoto@chromium.org <hashimoto@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-05 08:15:47 +0000 |
commit | 5ed09e352eb667a3d4f76c06a21e6aafe9fbdd19 (patch) | |
tree | 6f2c6ee9b27a16ae8fd487bca7eb5647acca0371 /google_apis | |
parent | 0efc4236a8157e7ffb3a3f74f069b66b29490e0f (diff) | |
download | chromium_src-5ed09e352eb667a3d4f76c06a21e6aafe9fbdd19.zip chromium_src-5ed09e352eb667a3d4f76c06a21e6aafe9fbdd19.tar.gz chromium_src-5ed09e352eb667a3d4f76c06a21e6aafe9fbdd19.tar.bz2 |
drive: Allow setting modified/accessed date with AddNewDirectory
Add AddNewDirectoryOptions() argument to AddNewDirectory.
Send date parameters with FilesInsertRequest.
TBR=benwells@chromium.org for chrome/browser/extensions/api/file_system/file_system_apitest_chromeos.cc
BUG=340553
TEST=unit_tests
Review URL: https://codereview.chromium.org/140513008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248916 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'google_apis')
-rw-r--r-- | google_apis/drive/drive_api_requests.cc | 8 | ||||
-rw-r--r-- | google_apis/drive/drive_api_requests.h | 14 | ||||
-rw-r--r-- | google_apis/drive/drive_api_requests_unittest.cc | 13 |
3 files changed, 35 insertions, 0 deletions
diff --git a/google_apis/drive/drive_api_requests.cc b/google_apis/drive/drive_api_requests.cc index 4fc56df..6c997d7 100644 --- a/google_apis/drive/drive_api_requests.cc +++ b/google_apis/drive/drive_api_requests.cc @@ -210,9 +210,17 @@ bool FilesInsertRequest::GetContentData(std::string* upload_content_type, base::DictionaryValue root; + if (!last_viewed_by_me_date_.is_null()) { + root.SetString("lastViewedByMeDate", + util::FormatTimeAsString(last_viewed_by_me_date_)); + } + if (!mime_type_.empty()) root.SetString("mimeType", mime_type_); + if (!modified_date_.is_null()) + root.SetString("modifiedDate", util::FormatTimeAsString(modified_date_)); + if (!parents_.empty()) { base::ListValue* parents_value = new base::ListValue; for (size_t i = 0; i < parents_.size(); ++i) { diff --git a/google_apis/drive/drive_api_requests.h b/google_apis/drive/drive_api_requests.h index c534e09..c3e3dc5 100644 --- a/google_apis/drive/drive_api_requests.h +++ b/google_apis/drive/drive_api_requests.h @@ -140,11 +140,23 @@ class FilesInsertRequest : public DriveApiDataRequest { virtual ~FilesInsertRequest(); // Optional request body. + const base::Time& last_viewed_by_me_date() const { + return last_viewed_by_me_date_; + } + void set_last_viewed_by_me_date(const base::Time& last_viewed_by_me_date) { + last_viewed_by_me_date_ = last_viewed_by_me_date; + } + const std::string& mime_type() const { return mime_type_; } void set_mime_type(const std::string& mime_type) { mime_type_ = mime_type; } + const base::Time& modified_date() const { return modified_date_; } + void set_modified_date(const base::Time& modified_date) { + modified_date_ = modified_date; + } + const std::vector<std::string>& parents() const { return parents_; } void add_parent(const std::string& parent) { parents_.push_back(parent); } @@ -163,7 +175,9 @@ class FilesInsertRequest : public DriveApiDataRequest { private: const DriveApiUrlGenerator url_generator_; + base::Time last_viewed_by_me_date_; std::string mime_type_; + base::Time modified_date_; std::vector<std::string> parents_; std::string title_; diff --git a/google_apis/drive/drive_api_requests_unittest.cc b/google_apis/drive/drive_api_requests_unittest.cc index b05af4b..315eaa2 100644 --- a/google_apis/drive/drive_api_requests_unittest.cc +++ b/google_apis/drive/drive_api_requests_unittest.cc @@ -418,6 +418,10 @@ TEST_F(DriveApiRequestsTest, DriveApiDataRequest_Fields) { } TEST_F(DriveApiRequestsTest, FilesInsertRequest) { + const base::Time::Exploded kModifiedDate = {2012, 7, 0, 19, 15, 59, 13, 123}; + const base::Time::Exploded kLastViewedByMeDate = + {2013, 7, 0, 19, 15, 59, 13, 123}; + // Set an expected data file containing the directory's entry data. expected_data_file_path_ = test_util::GetTestFilePath("drive/directory_entry.json"); @@ -434,7 +438,10 @@ TEST_F(DriveApiRequestsTest, FilesInsertRequest) { test_util::CreateQuitCallback( &run_loop, test_util::CreateCopyResultCallback(&error, &file_resource))); + request->set_last_viewed_by_me_date( + base::Time::FromUTCExploded(kLastViewedByMeDate)); request->set_mime_type("application/vnd.google-apps.folder"); + request->set_modified_date(base::Time::FromUTCExploded(kModifiedDate)); request->add_parent("root"); request->set_title("new directory"); request_sender_->StartRequestWithRetry(request); @@ -447,6 +454,12 @@ TEST_F(DriveApiRequestsTest, FilesInsertRequest) { EXPECT_EQ("application/json", http_request_.headers["Content-Type"]); EXPECT_TRUE(http_request_.has_content); + EXPECT_EQ("{\"lastViewedByMeDate\":\"2013-07-19T15:59:13.123Z\"," + "\"mimeType\":\"application/vnd.google-apps.folder\"," + "\"modifiedDate\":\"2012-07-19T15:59:13.123Z\"," + "\"parents\":[{\"id\":\"root\"}]," + "\"title\":\"new directory\"}", + http_request_.content); scoped_ptr<FileResource> expected( FileResource::CreateFrom( |