OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/chromeos/file_manager/file_tasks.h" | 5 #include "chrome/browser/chromeos/file_manager/file_tasks.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <set> | 8 #include <set> |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
173 | 173 |
174 TestingProfile profile; | 174 TestingProfile profile; |
175 | 175 |
176 // Foo.app can handle "text/plain" and "text/html" | 176 // Foo.app can handle "text/plain" and "text/html" |
177 std::unique_ptr<google_apis::AppResource> foo_app( | 177 std::unique_ptr<google_apis::AppResource> foo_app( |
178 new google_apis::AppResource); | 178 new google_apis::AppResource); |
179 foo_app->set_product_id("foo_app_id"); | 179 foo_app->set_product_id("foo_app_id"); |
180 foo_app->set_application_id("foo_app_id"); | 180 foo_app->set_application_id("foo_app_id"); |
181 foo_app->set_name("Foo"); | 181 foo_app->set_name("Foo"); |
182 foo_app->set_object_type("foo_object_type"); | 182 foo_app->set_object_type("foo_object_type"); |
183 ScopedVector<std::string> foo_mime_types; | 183 std::vector<std::unique_ptr<std::string>> foo_mime_types; |
184 foo_mime_types.push_back(new std::string("text/plain")); | 184 foo_mime_types.push_back(base::MakeUnique<std::string>("text/plain")); |
185 foo_mime_types.push_back(new std::string("text/html")); | 185 foo_mime_types.push_back(base::MakeUnique<std::string>("text/html")); |
186 foo_app->set_primary_mimetypes(std::move(foo_mime_types)); | 186 foo_app->set_primary_mimetypes(std::move(foo_mime_types)); |
187 | 187 |
188 // Bar.app can only handle "text/plain". | 188 // Bar.app can only handle "text/plain". |
189 std::unique_ptr<google_apis::AppResource> bar_app( | 189 std::unique_ptr<google_apis::AppResource> bar_app( |
190 new google_apis::AppResource); | 190 new google_apis::AppResource); |
191 bar_app->set_product_id("bar_app_id"); | 191 bar_app->set_product_id("bar_app_id"); |
192 bar_app->set_application_id("bar_app_id"); | 192 bar_app->set_application_id("bar_app_id"); |
193 bar_app->set_name("Bar"); | 193 bar_app->set_name("Bar"); |
194 bar_app->set_object_type("bar_object_type"); | 194 bar_app->set_object_type("bar_object_type"); |
195 ScopedVector<std::string> bar_mime_types; | 195 std::vector<std::unique_ptr<std::string>> bar_mime_types; |
196 bar_mime_types.push_back(new std::string("text/plain")); | 196 bar_mime_types.push_back(base::MakeUnique<std::string>("text/plain")); |
197 bar_app->set_primary_mimetypes(std::move(bar_mime_types)); | 197 bar_app->set_primary_mimetypes(std::move(bar_mime_types)); |
198 | 198 |
199 // Prepare DriveAppRegistry from Foo.app and Bar.app. | 199 // Prepare DriveAppRegistry from Foo.app and Bar.app. |
200 ScopedVector<google_apis::AppResource> app_resources; | 200 std::vector<std::unique_ptr<google_apis::AppResource>> app_resources; |
201 app_resources.push_back(foo_app.release()); | 201 app_resources.push_back(std::move(foo_app)); |
202 app_resources.push_back(bar_app.release()); | 202 app_resources.push_back(std::move(bar_app)); |
203 google_apis::AppList app_list; | 203 google_apis::AppList app_list; |
204 app_list.set_items(std::move(app_resources)); | 204 app_list.set_items(std::move(app_resources)); |
205 drive::DriveAppRegistry drive_app_registry(NULL); | 205 drive::DriveAppRegistry drive_app_registry(NULL); |
206 drive_app_registry.UpdateFromAppList(app_list); | 206 drive_app_registry.UpdateFromAppList(app_list); |
207 | 207 |
208 // Find apps for a "text/plain" file. Foo.app and Bar.app should be found. | 208 // Find apps for a "text/plain" file. Foo.app and Bar.app should be found. |
209 std::vector<extensions::EntryInfo> entries; | 209 std::vector<extensions::EntryInfo> entries; |
210 entries.push_back(extensions::EntryInfo( | 210 entries.push_back(extensions::EntryInfo( |
211 drive::util::GetDriveMountPointPath(&profile).AppendASCII("foo.txt"), | 211 drive::util::GetDriveMountPointPath(&profile).AppendASCII("foo.txt"), |
212 "text/plain", false)); | 212 "text/plain", false)); |
(...skipping 514 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
727 extension_service_->AddExtension(bar_app.Build().get()); | 727 extension_service_->AddExtension(bar_app.Build().get()); |
728 | 728 |
729 // Baz.app can handle "text/plain". | 729 // Baz.app can handle "text/plain". |
730 // This is a Drive app. | 730 // This is a Drive app. |
731 std::unique_ptr<google_apis::AppResource> baz_app( | 731 std::unique_ptr<google_apis::AppResource> baz_app( |
732 new google_apis::AppResource); | 732 new google_apis::AppResource); |
733 baz_app->set_product_id("baz_app_id"); | 733 baz_app->set_product_id("baz_app_id"); |
734 baz_app->set_application_id(kBazId); | 734 baz_app->set_application_id(kBazId); |
735 baz_app->set_name("Baz"); | 735 baz_app->set_name("Baz"); |
736 baz_app->set_object_type("baz_object_type"); | 736 baz_app->set_object_type("baz_object_type"); |
737 ScopedVector<std::string> baz_mime_types; | 737 std::vector<std::unique_ptr<std::string>> baz_mime_types; |
738 baz_mime_types.push_back(new std::string("text/plain")); | 738 baz_mime_types.push_back(base::MakeUnique<std::string>("text/plain")); |
739 baz_app->set_primary_mimetypes(std::move(baz_mime_types)); | 739 baz_app->set_primary_mimetypes(std::move(baz_mime_types)); |
740 // Set up DriveAppRegistry. | 740 // Set up DriveAppRegistry. |
741 ScopedVector<google_apis::AppResource> app_resources; | 741 std::vector<std::unique_ptr<google_apis::AppResource>> app_resources; |
742 app_resources.push_back(baz_app.release()); | 742 app_resources.push_back(std::move(baz_app)); |
743 google_apis::AppList app_list; | 743 google_apis::AppList app_list; |
744 app_list.set_items(std::move(app_resources)); | 744 app_list.set_items(std::move(app_resources)); |
745 drive::DriveAppRegistry drive_app_registry(NULL); | 745 drive::DriveAppRegistry drive_app_registry(NULL); |
746 drive_app_registry.UpdateFromAppList(app_list); | 746 drive_app_registry.UpdateFromAppList(app_list); |
747 | 747 |
748 // Find apps for "foo.txt". All apps should be found. | 748 // Find apps for "foo.txt". All apps should be found. |
749 std::vector<extensions::EntryInfo> entries; | 749 std::vector<extensions::EntryInfo> entries; |
750 std::vector<GURL> file_urls; | 750 std::vector<GURL> file_urls; |
751 entries.push_back( | 751 entries.push_back( |
752 extensions::EntryInfo(drive::util::GetDriveMountPointPath(&test_profile_) | 752 extensions::EntryInfo(drive::util::GetDriveMountPointPath(&test_profile_) |
(...skipping 23 matching lines...) Expand all Loading... |
776 const char kFooId[] = "hhgbjpmdppecanaaogonaigmmifgpaph"; | 776 const char kFooId[] = "hhgbjpmdppecanaaogonaigmmifgpaph"; |
777 const char kBarId[] = "odlhccgofgkadkkhcmhgnhgahonahoca"; | 777 const char kBarId[] = "odlhccgofgkadkkhcmhgnhgahonahoca"; |
778 | 778 |
779 // Foo.app can handle ".gdoc" files. | 779 // Foo.app can handle ".gdoc" files. |
780 std::unique_ptr<google_apis::AppResource> foo_app( | 780 std::unique_ptr<google_apis::AppResource> foo_app( |
781 new google_apis::AppResource); | 781 new google_apis::AppResource); |
782 foo_app->set_product_id("foo_app"); | 782 foo_app->set_product_id("foo_app"); |
783 foo_app->set_application_id(kFooId); | 783 foo_app->set_application_id(kFooId); |
784 foo_app->set_name("Foo"); | 784 foo_app->set_name("Foo"); |
785 foo_app->set_object_type("foo_object_type"); | 785 foo_app->set_object_type("foo_object_type"); |
786 ScopedVector<std::string> foo_extensions; | 786 std::vector<std::unique_ptr<std::string>> foo_extensions; |
787 foo_extensions.push_back(new std::string("gdoc")); // Not ".gdoc" | 787 foo_extensions.push_back( |
| 788 base::MakeUnique<std::string>("gdoc")); // Not ".gdoc" |
788 foo_app->set_primary_file_extensions(std::move(foo_extensions)); | 789 foo_app->set_primary_file_extensions(std::move(foo_extensions)); |
789 | 790 |
790 // Prepare DriveAppRegistry from Foo.app. | 791 // Prepare DriveAppRegistry from Foo.app. |
791 ScopedVector<google_apis::AppResource> app_resources; | 792 std::vector<std::unique_ptr<google_apis::AppResource>> app_resources; |
792 app_resources.push_back(foo_app.release()); | 793 app_resources.push_back(std::move(foo_app)); |
793 google_apis::AppList app_list; | 794 google_apis::AppList app_list; |
794 app_list.set_items(std::move(app_resources)); | 795 app_list.set_items(std::move(app_resources)); |
795 drive::DriveAppRegistry drive_app_registry(NULL); | 796 drive::DriveAppRegistry drive_app_registry(NULL); |
796 drive_app_registry.UpdateFromAppList(app_list); | 797 drive_app_registry.UpdateFromAppList(app_list); |
797 | 798 |
798 // Bar.app can handle ".gdoc" files. | 799 // Bar.app can handle ".gdoc" files. |
799 // This is an extension (file browser handler). | 800 // This is an extension (file browser handler). |
800 extensions::ExtensionBuilder bar_app; | 801 extensions::ExtensionBuilder bar_app; |
801 bar_app.SetManifest( | 802 bar_app.SetManifest( |
802 extensions::DictionaryBuilder() | 803 extensions::DictionaryBuilder() |
(...skipping 375 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1178 FindFileHandlerTasks(&test_profile_, entries, &tasks); | 1179 FindFileHandlerTasks(&test_profile_, entries, &tasks); |
1179 | 1180 |
1180 ASSERT_EQ(1U, tasks.size()); | 1181 ASSERT_EQ(1U, tasks.size()); |
1181 EXPECT_EQ(kFooId, tasks[0].task_descriptor().app_id); | 1182 EXPECT_EQ(kFooId, tasks[0].task_descriptor().app_id); |
1182 EXPECT_EQ("Foo", tasks[0].task_title()); | 1183 EXPECT_EQ("Foo", tasks[0].task_title()); |
1183 EXPECT_EQ(Verb::VERB_PACK_WITH, tasks[0].task_verb()); | 1184 EXPECT_EQ(Verb::VERB_PACK_WITH, tasks[0].task_verb()); |
1184 } | 1185 } |
1185 | 1186 |
1186 } // namespace file_tasks | 1187 } // namespace file_tasks |
1187 } // namespace file_manager. | 1188 } // namespace file_manager. |
OLD | NEW |