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

Side by Side Diff: chrome/browser/extensions/chrome_app_sorting_unittest.cc

Issue 196663003: Introduce an extension parameter which is used to customize the extension. It's available for exter… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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/extensions/chrome_app_sorting.h" 5 #include "chrome/browser/extensions/chrome_app_sorting.h"
6 6
7 #include <map> 7 #include <map>
8 8
9 #include "chrome/browser/extensions/./extension_prefs_unittest.h" 9 #include "chrome/browser/extensions/./extension_prefs_unittest.h"
10 #include "chrome/common/extensions/extension_constants.h" 10 #include "chrome/common/extensions/extension_constants.h"
(...skipping 13 matching lines...) Expand all
24 }; 24 };
25 25
26 class ChromeAppSortingAppLocation : public ChromeAppSortingTest { 26 class ChromeAppSortingAppLocation : public ChromeAppSortingTest {
27 public: 27 public:
28 virtual void Initialize() OVERRIDE { 28 virtual void Initialize() OVERRIDE {
29 extension_ = prefs_.AddExtension("not_an_app"); 29 extension_ = prefs_.AddExtension("not_an_app");
30 // Non-apps should not have any app launch ordinal or page ordinal. 30 // Non-apps should not have any app launch ordinal or page ordinal.
31 prefs()->OnExtensionInstalled(extension_.get(), 31 prefs()->OnExtensionInstalled(extension_.get(),
32 Extension::ENABLED, 32 Extension::ENABLED,
33 false, 33 false,
34 syncer::StringOrdinal()); 34 syncer::StringOrdinal(),
35 std::string());
35 } 36 }
36 37
37 virtual void Verify() OVERRIDE { 38 virtual void Verify() OVERRIDE {
38 EXPECT_FALSE( 39 EXPECT_FALSE(
39 app_sorting()->GetAppLaunchOrdinal(extension_->id()).IsValid()); 40 app_sorting()->GetAppLaunchOrdinal(extension_->id()).IsValid());
40 EXPECT_FALSE( 41 EXPECT_FALSE(
41 app_sorting()->GetPageOrdinal(extension_->id()).IsValid()); 42 app_sorting()->GetPageOrdinal(extension_->id()).IsValid());
42 } 43 }
43 44
44 private: 45 private:
45 scoped_refptr<Extension> extension_; 46 scoped_refptr<Extension> extension_;
46 }; 47 };
47 TEST_F(ChromeAppSortingAppLocation, ChromeAppSortingAppLocation) {} 48 TEST_F(ChromeAppSortingAppLocation, ChromeAppSortingAppLocation) {}
48 49
49 class ChromeAppSortingAppLaunchOrdinal : public ChromeAppSortingTest { 50 class ChromeAppSortingAppLaunchOrdinal : public ChromeAppSortingTest {
50 public: 51 public:
51 virtual void Initialize() OVERRIDE { 52 virtual void Initialize() OVERRIDE {
52 // No extensions yet. 53 // No extensions yet.
53 syncer::StringOrdinal page = syncer::StringOrdinal::CreateInitialOrdinal(); 54 syncer::StringOrdinal page = syncer::StringOrdinal::CreateInitialOrdinal();
54 EXPECT_TRUE(syncer::StringOrdinal::CreateInitialOrdinal().Equals( 55 EXPECT_TRUE(syncer::StringOrdinal::CreateInitialOrdinal().Equals(
55 app_sorting()->CreateNextAppLaunchOrdinal(page))); 56 app_sorting()->CreateNextAppLaunchOrdinal(page)));
56 57
57 extension_ = prefs_.AddApp("on_extension_installed"); 58 extension_ = prefs_.AddApp("on_extension_installed");
58 EXPECT_FALSE(prefs()->IsExtensionDisabled(extension_->id())); 59 EXPECT_FALSE(prefs()->IsExtensionDisabled(extension_->id()));
59 prefs()->OnExtensionInstalled(extension_.get(), 60 prefs()->OnExtensionInstalled(extension_.get(),
60 Extension::ENABLED, 61 Extension::ENABLED,
61 false, 62 false,
62 syncer::StringOrdinal()); 63 syncer::StringOrdinal(),
64 std::string());
63 } 65 }
64 66
65 virtual void Verify() OVERRIDE { 67 virtual void Verify() OVERRIDE {
66 syncer::StringOrdinal launch_ordinal = 68 syncer::StringOrdinal launch_ordinal =
67 app_sorting()->GetAppLaunchOrdinal(extension_->id()); 69 app_sorting()->GetAppLaunchOrdinal(extension_->id());
68 syncer::StringOrdinal page_ordinal = 70 syncer::StringOrdinal page_ordinal =
69 syncer::StringOrdinal::CreateInitialOrdinal(); 71 syncer::StringOrdinal::CreateInitialOrdinal();
70 72
71 // Extension should have been assigned a valid StringOrdinal. 73 // Extension should have been assigned a valid StringOrdinal.
72 EXPECT_TRUE(launch_ordinal.IsValid()); 74 EXPECT_TRUE(launch_ordinal.IsValid());
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 106
105 class ChromeAppSortingPageOrdinal : public ChromeAppSortingTest { 107 class ChromeAppSortingPageOrdinal : public ChromeAppSortingTest {
106 public: 108 public:
107 virtual void Initialize() OVERRIDE { 109 virtual void Initialize() OVERRIDE {
108 extension_ = prefs_.AddApp("page_ordinal"); 110 extension_ = prefs_.AddApp("page_ordinal");
109 // Install with a page preference. 111 // Install with a page preference.
110 first_page_ = syncer::StringOrdinal::CreateInitialOrdinal(); 112 first_page_ = syncer::StringOrdinal::CreateInitialOrdinal();
111 prefs()->OnExtensionInstalled(extension_.get(), 113 prefs()->OnExtensionInstalled(extension_.get(),
112 Extension::ENABLED, 114 Extension::ENABLED,
113 false, 115 false,
114 first_page_); 116 first_page_,
117 std::string());
115 EXPECT_TRUE(first_page_.Equals( 118 EXPECT_TRUE(first_page_.Equals(
116 app_sorting()->GetPageOrdinal(extension_->id()))); 119 app_sorting()->GetPageOrdinal(extension_->id())));
117 EXPECT_EQ(0, app_sorting()->PageStringOrdinalAsInteger(first_page_)); 120 EXPECT_EQ(0, app_sorting()->PageStringOrdinalAsInteger(first_page_));
118 121
119 scoped_refptr<Extension> extension2 = prefs_.AddApp("page_ordinal_2"); 122 scoped_refptr<Extension> extension2 = prefs_.AddApp("page_ordinal_2");
120 // Install without any page preference. 123 // Install without any page preference.
121 prefs()->OnExtensionInstalled(extension2.get(), 124 prefs()->OnExtensionInstalled(extension2.get(),
122 Extension::ENABLED, 125 Extension::ENABLED,
123 false, 126 false,
124 syncer::StringOrdinal()); 127 syncer::StringOrdinal(),
128 std::string());
125 EXPECT_TRUE(first_page_.Equals( 129 EXPECT_TRUE(first_page_.Equals(
126 app_sorting()->GetPageOrdinal(extension2->id()))); 130 app_sorting()->GetPageOrdinal(extension2->id())));
127 } 131 }
128 virtual void Verify() OVERRIDE { 132 virtual void Verify() OVERRIDE {
129 // Set the page ordinal. 133 // Set the page ordinal.
130 syncer::StringOrdinal new_page = first_page_.CreateAfter(); 134 syncer::StringOrdinal new_page = first_page_.CreateAfter();
131 app_sorting()->SetPageOrdinal(extension_->id(), new_page); 135 app_sorting()->SetPageOrdinal(extension_->id(), new_page);
132 // Verify the page ordinal. 136 // Verify the page ordinal.
133 EXPECT_TRUE( 137 EXPECT_TRUE(
134 new_page.Equals(app_sorting()->GetPageOrdinal(extension_->id()))); 138 new_page.Equals(app_sorting()->GetPageOrdinal(extension_->id())));
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after
629 simple_dict.SetString(keys::kApp, "true"); 633 simple_dict.SetString(keys::kApp, "true");
630 simple_dict.SetString(keys::kLaunchLocalPath, "fake.html"); 634 simple_dict.SetString(keys::kLaunchLocalPath, "fake.html");
631 635
632 std::string error; 636 std::string error;
633 app1_scoped_ = Extension::Create( 637 app1_scoped_ = Extension::Create(
634 prefs_.temp_dir().AppendASCII("app1_"), Manifest::EXTERNAL_PREF, 638 prefs_.temp_dir().AppendASCII("app1_"), Manifest::EXTERNAL_PREF,
635 simple_dict, Extension::NO_FLAGS, &error); 639 simple_dict, Extension::NO_FLAGS, &error);
636 prefs()->OnExtensionInstalled(app1_scoped_.get(), 640 prefs()->OnExtensionInstalled(app1_scoped_.get(),
637 Extension::ENABLED, 641 Extension::ENABLED,
638 false, 642 false,
639 syncer::StringOrdinal()); 643 syncer::StringOrdinal(),
644 std::string());
640 645
641 app2_scoped_ = Extension::Create( 646 app2_scoped_ = Extension::Create(
642 prefs_.temp_dir().AppendASCII("app2_"), Manifest::EXTERNAL_PREF, 647 prefs_.temp_dir().AppendASCII("app2_"), Manifest::EXTERNAL_PREF,
643 simple_dict, Extension::NO_FLAGS, &error); 648 simple_dict, Extension::NO_FLAGS, &error);
644 prefs()->OnExtensionInstalled(app2_scoped_.get(), 649 prefs()->OnExtensionInstalled(app2_scoped_.get(),
645 Extension::ENABLED, 650 Extension::ENABLED,
646 false, 651 false,
647 syncer::StringOrdinal()); 652 syncer::StringOrdinal(),
653 std::string());
648 654
649 app1_ = app1_scoped_.get(); 655 app1_ = app1_scoped_.get();
650 app2_ = app2_scoped_.get(); 656 app2_ = app2_scoped_.get();
651 } 657 }
652 virtual ~ChromeAppSortingPreinstalledAppsBase() {} 658 virtual ~ChromeAppSortingPreinstalledAppsBase() {}
653 659
654 protected: 660 protected:
655 // Weak references, for convenience. 661 // Weak references, for convenience.
656 Extension* app1_; 662 Extension* app1_;
657 Extension* app2_; 663 Extension* app2_;
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
823 default_app_launch_ordinal_ = 829 default_app_launch_ordinal_ =
824 syncer::StringOrdinal::CreateInitialOrdinal().CreateBefore(); 830 syncer::StringOrdinal::CreateInitialOrdinal().CreateBefore();
825 } 831 }
826 832
827 virtual void SetupUserOrdinals() {} 833 virtual void SetupUserOrdinals() {}
828 834
829 virtual void InstallApps() { 835 virtual void InstallApps() {
830 prefs()->OnExtensionInstalled(app_.get(), 836 prefs()->OnExtensionInstalled(app_.get(),
831 Extension::ENABLED, 837 Extension::ENABLED,
832 false, 838 false,
833 syncer::StringOrdinal()); 839 syncer::StringOrdinal(),
840 std::string());
834 } 841 }
835 842
836 scoped_refptr<Extension> app_; 843 scoped_refptr<Extension> app_;
837 syncer::StringOrdinal default_page_ordinal_; 844 syncer::StringOrdinal default_page_ordinal_;
838 syncer::StringOrdinal default_app_launch_ordinal_; 845 syncer::StringOrdinal default_app_launch_ordinal_;
839 }; 846 };
840 847
841 // Tests that the app gets its default ordinals. 848 // Tests that the app gets its default ordinals.
842 class ChromeAppSortingDefaultOrdinals 849 class ChromeAppSortingDefaultOrdinals
843 : public ChromeAppSortingDefaultOrdinalsBase { 850 : public ChromeAppSortingDefaultOrdinalsBase {
(...skipping 23 matching lines...) Expand all
867 AppSorting* app_sorting = prefs()->app_sorting(); 874 AppSorting* app_sorting = prefs()->app_sorting();
868 875
869 EXPECT_FALSE(app_sorting->GetPageOrdinal(app_->id()).Equals( 876 EXPECT_FALSE(app_sorting->GetPageOrdinal(app_->id()).Equals(
870 default_page_ordinal_)); 877 default_page_ordinal_));
871 EXPECT_TRUE(app_sorting->GetPageOrdinal(app_->id()).Equals(install_page_)); 878 EXPECT_TRUE(app_sorting->GetPageOrdinal(app_->id()).Equals(install_page_));
872 } 879 }
873 880
874 protected: 881 protected:
875 virtual void InstallApps() OVERRIDE { 882 virtual void InstallApps() OVERRIDE {
876 install_page_ = default_page_ordinal_.CreateAfter(); 883 install_page_ = default_page_ordinal_.CreateAfter();
877 prefs()->OnExtensionInstalled(app_.get(), 884 prefs()->OnExtensionInstalled(
878 Extension::ENABLED, 885 app_.get(), Extension::ENABLED, false, install_page_, std::string());
879 false,
880 install_page_);
881 } 886 }
882 887
883 private: 888 private:
884 syncer::StringOrdinal install_page_; 889 syncer::StringOrdinal install_page_;
885 }; 890 };
886 TEST_F(ChromeAppSortingDefaultOrdinalOverriddenByInstallPage, 891 TEST_F(ChromeAppSortingDefaultOrdinalOverriddenByInstallPage,
887 ChromeAppSortingDefaultOrdinalOverriddenByInstallPage) {} 892 ChromeAppSortingDefaultOrdinalOverriddenByInstallPage) {}
888 893
889 // Tests that the default ordinals are overridden by user values. 894 // Tests that the default ordinals are overridden by user values.
890 class ChromeAppSortingDefaultOrdinalOverriddenByUserValue 895 class ChromeAppSortingDefaultOrdinalOverriddenByUserValue
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
953 } 958 }
954 959
955 private: 960 private:
956 scoped_refptr<Extension> other_app_; 961 scoped_refptr<Extension> other_app_;
957 scoped_refptr<Extension> yet_another_app_; 962 scoped_refptr<Extension> yet_another_app_;
958 }; 963 };
959 TEST_F(ChromeAppSortingDefaultOrdinalNoCollision, 964 TEST_F(ChromeAppSortingDefaultOrdinalNoCollision,
960 ChromeAppSortingDefaultOrdinalNoCollision) {} 965 ChromeAppSortingDefaultOrdinalNoCollision) {}
961 966
962 } // namespace extensions 967 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698