OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "base/basictypes.h" |
5 #include "chrome/test/live_sync/live_extensions_sync_test.h" | 6 #include "chrome/test/live_sync/live_extensions_sync_test.h" |
6 | 7 |
7 #include "base/basictypes.h" | |
8 #include "chrome/browser/profiles/profile.h" | |
9 #include "chrome/common/extensions/extension.h" | |
10 | |
11 class TwoClientLiveExtensionsSyncTest : public LiveExtensionsSyncTest { | 8 class TwoClientLiveExtensionsSyncTest : public LiveExtensionsSyncTest { |
12 public: | 9 public: |
13 TwoClientLiveExtensionsSyncTest() | 10 TwoClientLiveExtensionsSyncTest() |
14 : LiveExtensionsSyncTest(TWO_CLIENT) {} | 11 : LiveExtensionsSyncTest(TWO_CLIENT) {} |
15 | 12 |
16 virtual ~TwoClientLiveExtensionsSyncTest() {} | 13 virtual ~TwoClientLiveExtensionsSyncTest() {} |
17 | 14 |
18 private: | 15 private: |
19 DISALLOW_COPY_AND_ASSIGN(TwoClientLiveExtensionsSyncTest); | 16 DISALLOW_COPY_AND_ASSIGN(TwoClientLiveExtensionsSyncTest); |
20 }; | 17 }; |
21 | 18 |
22 IN_PROC_BROWSER_TEST_F(TwoClientLiveExtensionsSyncTest, | 19 IN_PROC_BROWSER_TEST_F(TwoClientLiveExtensionsSyncTest, |
23 StartWithNoExtensions) { | 20 StartWithNoExtensions) { |
24 ASSERT_TRUE(SetupSync()); | 21 ASSERT_TRUE(SetupSync()); |
25 | 22 |
26 ASSERT_TRUE(AllProfilesHaveSameExtensionsAsVerifier()); | 23 ASSERT_TRUE(AllProfilesHaveSameExtensionsAsVerifier()); |
27 } | 24 } |
28 | 25 |
29 // TODO(rsimha): Enable after http://crbug.com/70028 is fixed. | |
30 IN_PROC_BROWSER_TEST_F(TwoClientLiveExtensionsSyncTest, | 26 IN_PROC_BROWSER_TEST_F(TwoClientLiveExtensionsSyncTest, |
31 DISABLED_StartWithSameExtensions) { | 27 StartWithSameExtensions) { |
32 ASSERT_TRUE(SetupClients()); | 28 ASSERT_TRUE(SetupClients()); |
33 | 29 |
34 const int kNumExtensions = 5; | 30 const int kNumExtensions = 5; |
35 for (int i = 0; i < kNumExtensions; ++i) { | 31 for (int i = 0; i < kNumExtensions; ++i) { |
36 InstallExtension(GetProfile(0), GetExtension(i)); | 32 InstallExtension(GetProfile(0), i); |
37 InstallExtension(GetProfile(1), GetExtension(i)); | 33 InstallExtension(GetProfile(1), i); |
38 InstallExtension(verifier(), GetExtension(i)); | 34 InstallExtension(verifier(), i); |
39 } | 35 } |
40 | 36 |
41 ASSERT_TRUE(SetupSync()); | 37 ASSERT_TRUE(SetupSync()); |
42 | 38 |
43 ASSERT_TRUE(AwaitQuiescence()); | 39 ASSERT_TRUE(AwaitQuiescence()); |
44 | 40 |
45 ASSERT_TRUE(AllProfilesHaveSameExtensionsAsVerifier()); | 41 ASSERT_TRUE(AllProfilesHaveSameExtensionsAsVerifier()); |
46 } | 42 } |
47 | 43 |
48 // TODO(rsimha): Remove DISABLED_ prefix after http://crbug.com/66925 is fixed. | |
49 IN_PROC_BROWSER_TEST_F(TwoClientLiveExtensionsSyncTest, | 44 IN_PROC_BROWSER_TEST_F(TwoClientLiveExtensionsSyncTest, |
50 DISABLED_StartWithDifferentExtensions) { | 45 StartWithDifferentExtensions) { |
51 ASSERT_TRUE(SetupClients()); | 46 ASSERT_TRUE(SetupClients()); |
52 | 47 |
53 int i = 0; | 48 int i = 0; |
54 | 49 |
55 const int kNumCommonExtensions = 5; | 50 const int kNumCommonExtensions = 5; |
56 for (int j = 0; j < kNumCommonExtensions; ++i, ++j) { | 51 for (int j = 0; j < kNumCommonExtensions; ++i, ++j) { |
57 InstallExtension(GetProfile(0), GetExtension(i)); | 52 InstallExtension(GetProfile(0), i); |
58 InstallExtension(GetProfile(1), GetExtension(i)); | 53 InstallExtension(GetProfile(1), i); |
59 InstallExtension(verifier(), GetExtension(i)); | 54 InstallExtension(verifier(), i); |
60 } | 55 } |
61 | 56 |
62 const int kNumProfile0Extensions = 10; | 57 const int kNumProfile0Extensions = 10; |
63 for (int j = 0; j < kNumProfile0Extensions; ++i, ++j) { | 58 for (int j = 0; j < kNumProfile0Extensions; ++i, ++j) { |
64 InstallExtension(GetProfile(0), GetExtension(i)); | 59 InstallExtension(GetProfile(0), i); |
65 InstallExtension(verifier(), GetExtension(i)); | 60 InstallExtension(verifier(), i); |
66 } | 61 } |
67 | 62 |
68 const int kNumProfile1Extensions = 10; | 63 const int kNumProfile1Extensions = 10; |
69 for (int j = 0; j < kNumProfile1Extensions; ++i, ++j) { | 64 for (int j = 0; j < kNumProfile1Extensions; ++i, ++j) { |
70 InstallExtension(GetProfile(1), GetExtension(i)); | 65 InstallExtension(GetProfile(1), i); |
71 InstallExtension(verifier(), GetExtension(i)); | 66 InstallExtension(verifier(), i); |
72 } | 67 } |
73 | 68 |
74 ASSERT_TRUE(SetupSync()); | 69 ASSERT_TRUE(SetupSync()); |
75 | 70 |
76 ASSERT_TRUE(AwaitQuiescence()); | 71 ASSERT_TRUE(AwaitQuiescence()); |
77 | 72 |
78 InstallAllPendingExtensions(GetProfile(0)); | 73 InstallExtensionsPendingForSync(GetProfile(0)); |
79 InstallAllPendingExtensions(GetProfile(1)); | 74 InstallExtensionsPendingForSync(GetProfile(1)); |
80 | 75 |
81 ASSERT_TRUE(AllProfilesHaveSameExtensionsAsVerifier()); | 76 ASSERT_TRUE(AllProfilesHaveSameExtensionsAsVerifier()); |
82 } | 77 } |
83 | 78 |
84 // TODO(rsimha): Remove DISABLED_ prefix after http://crbug.com/66925 is fixed. | |
85 IN_PROC_BROWSER_TEST_F(TwoClientLiveExtensionsSyncTest, | 79 IN_PROC_BROWSER_TEST_F(TwoClientLiveExtensionsSyncTest, |
86 DISABLED_InstallDifferentExtensions) { | 80 InstallDifferentExtensions) { |
87 ASSERT_TRUE(SetupClients()); | 81 ASSERT_TRUE(SetupClients()); |
88 | 82 |
89 int i = 0; | 83 int i = 0; |
90 | 84 |
91 const int kNumCommonExtensions = 5; | 85 const int kNumCommonExtensions = 5; |
92 for (int j = 0; j < kNumCommonExtensions; ++i, ++j) { | 86 for (int j = 0; j < kNumCommonExtensions; ++i, ++j) { |
93 InstallExtension(GetProfile(0), GetExtension(i)); | 87 InstallExtension(GetProfile(0), i); |
94 InstallExtension(GetProfile(1), GetExtension(i)); | 88 InstallExtension(GetProfile(1), i); |
95 InstallExtension(verifier(), GetExtension(i)); | 89 InstallExtension(verifier(), i); |
96 } | 90 } |
97 | 91 |
98 ASSERT_TRUE(SetupSync()); | 92 ASSERT_TRUE(SetupSync()); |
99 | 93 |
100 ASSERT_TRUE(AwaitQuiescence()); | 94 ASSERT_TRUE(AwaitQuiescence()); |
101 | 95 |
102 const int kNumProfile0Extensions = 10; | 96 const int kNumProfile0Extensions = 10; |
103 for (int j = 0; j < kNumProfile0Extensions; ++i, ++j) { | 97 for (int j = 0; j < kNumProfile0Extensions; ++i, ++j) { |
104 InstallExtension(GetProfile(0), GetExtension(i)); | 98 InstallExtension(GetProfile(0), i); |
105 InstallExtension(verifier(), GetExtension(i)); | 99 InstallExtension(verifier(), i); |
106 } | 100 } |
107 | 101 |
108 const int kNumProfile1Extensions = 10; | 102 const int kNumProfile1Extensions = 10; |
109 for (int j = 0; j < kNumProfile1Extensions; ++i, ++j) { | 103 for (int j = 0; j < kNumProfile1Extensions; ++i, ++j) { |
110 InstallExtension(GetProfile(1), GetExtension(i)); | 104 InstallExtension(GetProfile(1), i); |
111 InstallExtension(verifier(), GetExtension(i)); | 105 InstallExtension(verifier(), i); |
112 } | 106 } |
113 | 107 |
114 ASSERT_TRUE(AwaitQuiescence()); | 108 ASSERT_TRUE(AwaitQuiescence()); |
115 | 109 |
116 InstallAllPendingExtensions(GetProfile(0)); | 110 InstallExtensionsPendingForSync(GetProfile(0)); |
117 InstallAllPendingExtensions(GetProfile(1)); | 111 InstallExtensionsPendingForSync(GetProfile(1)); |
118 | 112 |
119 ASSERT_TRUE(AllProfilesHaveSameExtensionsAsVerifier()); | 113 ASSERT_TRUE(AllProfilesHaveSameExtensionsAsVerifier()); |
120 } | 114 } |
121 | 115 |
122 // TODO(akalin): Add tests exercising: | 116 // TODO(akalin): Add tests exercising: |
123 // - Extensions enabled/disabled state sync behavior | 117 // - Extensions enabled/disabled state sync behavior |
124 // - Extension uninstallation | 118 // - Extension uninstallation |
125 // - Offline installation/uninstallation behavior | 119 // - Offline installation/uninstallation behavior |
OLD | NEW |