Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / drive / test_util.cc
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/drive/test_util.h"
6
7 #include "base/run_loop.h"
8 #include "chrome/browser/drive/drive_api_util.h"
9 #include "chrome/browser/drive/fake_drive_service.h"
10 #include "google_apis/drive/gdata_wapi_parser.h"
11 #include "google_apis/drive/test_util.h"
12
13 using google_apis::GDATA_OTHER_ERROR;
14 using google_apis::GDataErrorCode;
15 using google_apis::HTTP_CREATED;
16 using google_apis::ResourceEntry;
17
18 namespace drive {
19 namespace test_util {
20
21 bool SetUpTestEntries(FakeDriveService* drive_service) {
22   GDataErrorCode error = GDATA_OTHER_ERROR;
23   scoped_ptr<ResourceEntry> entry;
24
25   drive_service->AddNewFileWithResourceId(
26       "file:2_file_resource_id",
27       "audio/mpeg",
28       "This is some test content.",
29       drive_service->GetRootResourceId(),
30       "File 1.txt",
31       false,  // shared_with_me
32       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
33   base::RunLoop().RunUntilIdle();
34   if (error != HTTP_CREATED)
35     return false;
36
37   drive_service->AddNewFileWithResourceId(
38       "file:slash_file_resource_id",
39       "audio/mpeg",
40       "This is some test content.",
41       drive_service->GetRootResourceId(),
42       "Slash / in file 1.txt",
43       false,  // shared_with_me
44       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
45   base::RunLoop().RunUntilIdle();
46   if (error != HTTP_CREATED)
47     return false;
48
49   drive_service->AddNewFileWithResourceId(
50       "file:3_file_resource_id",
51       "audio/mpeg",
52       "This is some test content.",
53       drive_service->GetRootResourceId(),
54       "Duplicate Name.txt",
55       false,  // shared_with_me
56       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
57   base::RunLoop().RunUntilIdle();
58   if (error != HTTP_CREATED)
59     return false;
60
61   drive_service->AddNewFileWithResourceId(
62       "file:4_file_resource_id",
63       "audio/mpeg",
64       "This is some test content.",
65       drive_service->GetRootResourceId(),
66       "Duplicate Name.txt",
67       false,  // shared_with_me
68       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
69   base::RunLoop().RunUntilIdle();
70   if (error != HTTP_CREATED)
71     return false;
72
73   drive_service->AddNewFileWithResourceId(
74       "document:5_document_resource_id",
75       util::kGoogleDocumentMimeType,
76       std::string(),
77       drive_service->GetRootResourceId(),
78       "Document 1 excludeDir-test",
79       false,  // shared_with_me
80       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
81   base::RunLoop().RunUntilIdle();
82   if (error != HTTP_CREATED)
83     return false;
84
85   drive_service->AddNewFileWithResourceId(
86       "folder:1_folder_resource_id",
87       util::kDriveFolderMimeType,
88       std::string(),
89       drive_service->GetRootResourceId(),
90       "Directory 1",
91       false,  // shared_with_me
92       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
93   base::RunLoop().RunUntilIdle();
94   if (error != HTTP_CREATED)
95     return false;
96
97   drive_service->AddNewFileWithResourceId(
98       "file:subdirectory_file_1_id",
99       "audio/mpeg",
100       "This is some test content.",
101       "folder:1_folder_resource_id",
102       "SubDirectory File 1.txt",
103       false,  // shared_with_me
104       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
105   base::RunLoop().RunUntilIdle();
106   if (error != HTTP_CREATED)
107     return false;
108
109   drive_service->AddNewFileWithResourceId(
110       "file:subdirectory_unowned_file_1_id",
111       "audio/mpeg",
112       "This is some test content.",
113       "folder:1_folder_resource_id",
114       "Shared to The Account Owner.txt",
115       true,  // shared_with_me
116       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
117   base::RunLoop().RunUntilIdle();
118   if (error != HTTP_CREATED)
119     return false;
120
121   drive_service->AddNewDirectoryWithResourceId(
122       "folder:sub_dir_folder_resource_id",
123       "folder:1_folder_resource_id",
124       "Sub Directory Folder",
125       DriveServiceInterface::AddNewDirectoryOptions(),
126       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
127   base::RunLoop().RunUntilIdle();
128   if (error != HTTP_CREATED)
129     return false;
130
131   drive_service->AddNewDirectoryWithResourceId(
132       "folder:sub_sub_directory_folder_id",
133       "folder:sub_dir_folder_resource_id",
134       "Sub Sub Directory Folder",
135       DriveServiceInterface::AddNewDirectoryOptions(),
136       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
137   base::RunLoop().RunUntilIdle();
138   if (error != HTTP_CREATED)
139     return false;
140
141   drive_service->AddNewDirectoryWithResourceId(
142       "folder:slash_dir_folder_resource_id",
143       drive_service->GetRootResourceId(),
144       "Slash / in directory",
145       DriveServiceInterface::AddNewDirectoryOptions(),
146       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
147   base::RunLoop().RunUntilIdle();
148   if (error != HTTP_CREATED)
149     return false;
150
151   drive_service->AddNewFileWithResourceId(
152       "file:slash_subdir_file",
153       "audio/mpeg",
154       "This is some test content.",
155       "folder:slash_dir_folder_resource_id",
156       "Slash SubDir File.txt",
157       false,  // shared_with_me
158       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
159   base::RunLoop().RunUntilIdle();
160   if (error != HTTP_CREATED)
161     return false;
162
163   drive_service->AddNewDirectoryWithResourceId(
164       "folder:sub_dir_folder_2_self_link",
165       drive_service->GetRootResourceId(),
166       "Directory 2 excludeDir-test",
167       DriveServiceInterface::AddNewDirectoryOptions(),
168       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
169   base::RunLoop().RunUntilIdle();
170   if (error != HTTP_CREATED)
171     return false;
172
173   drive_service->AddNewFileWithResourceId(
174       "file:1_orphanfile_resource_id",
175       "text/plain",
176       "This is some test content.",
177       std::string(),
178       "Orphan File 1.txt",
179       true,  // shared_with_me
180       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
181   base::RunLoop().RunUntilIdle();
182   if (error != HTTP_CREATED)
183     return false;
184
185   drive_service->AddNewFileWithResourceId(
186       "document:orphan_doc_1",
187       util::kGoogleDocumentMimeType,
188       std::string(),
189       std::string(),
190       "Orphan Document",
191       true,  // shared_with_me
192       google_apis::test_util::CreateCopyResultCallback(&error, &entry));
193   base::RunLoop().RunUntilIdle();
194   if (error != HTTP_CREATED)
195     return false;
196
197   return true;
198 }
199
200 }  // namespace test_util
201 }  // namespace drive