OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 import copy | 6 import copy |
7 import os | 7 import os |
8 | 8 |
9 import pyauto_functional # Must be imported before pyauto | 9 import pyauto_functional # Must be imported before pyauto |
10 import pyauto | 10 import pyauto |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
93 self.RemoveNTPDefaultThumbnails() | 93 self.RemoveNTPDefaultThumbnails() |
94 self.assertFalse(self.GetNTPThumbnails()) | 94 self.assertFalse(self.GetNTPThumbnails()) |
95 | 95 |
96 def testOneMostVisitedSite(self): | 96 def testOneMostVisitedSite(self): |
97 """Tests that a site is added to the most visited sites""" | 97 """Tests that a site is added to the most visited sites""" |
98 self.RemoveNTPDefaultThumbnails() | 98 self.RemoveNTPDefaultThumbnails() |
99 self.NavigateToURL(self.PAGES[1]['url']) | 99 self.NavigateToURL(self.PAGES[1]['url']) |
100 thumbnail = self.GetNTPThumbnails()[0] | 100 thumbnail = self.GetNTPThumbnails()[0] |
101 self.assertEqual(self.PAGES[1]['url'], thumbnail['url']) | 101 self.assertEqual(self.PAGES[1]['url'], thumbnail['url']) |
102 self.assertEqual(self.PAGES[1]['title'], thumbnail['title']) | 102 self.assertEqual(self.PAGES[1]['title'], thumbnail['title']) |
103 self.assertFalse(thumbnail['is_pinned']) | |
104 | 103 |
105 def testMoveThumbnailBasic(self): | 104 def testMoveThumbnailBasic(self): |
106 """Tests moving a thumbnail to a different index""" | 105 """Tests moving a thumbnail to a different index""" |
107 self.RemoveNTPDefaultThumbnails() | 106 self.RemoveNTPDefaultThumbnails() |
108 self.NavigateToURL(self.PAGES[0]['url']) | 107 self.NavigateToURL(self.PAGES[0]['url']) |
109 self.NavigateToURL(self.PAGES[1]['url']) | 108 self.NavigateToURL(self.PAGES[1]['url']) |
110 thumbnails = self.GetNTPThumbnails() | 109 thumbnails = self.GetNTPThumbnails() |
111 self.MoveNTPThumbnail(thumbnails[0], 1) | 110 self.MoveNTPThumbnail(thumbnails[0], 1) |
112 self.assertTrue(self.IsNTPThumbnailPinned(thumbnails[0])) | |
113 self.assertFalse(self.IsNTPThumbnailPinned(thumbnails[1])) | |
114 self.assertEqual(self.PAGES[0]['url'], self.GetNTPThumbnails()[1]['url']) | 111 self.assertEqual(self.PAGES[0]['url'], self.GetNTPThumbnails()[1]['url']) |
115 self.assertEqual(1, self.GetNTPThumbnailIndex(thumbnails[0])) | 112 self.assertEqual(1, self.GetNTPThumbnailIndex(thumbnails[0])) |
116 | 113 |
117 def testPinningThumbnailBasic(self): | |
118 """Tests that we can pin/unpin a thumbnail""" | |
119 self.RemoveNTPDefaultThumbnails() | |
120 self.NavigateToURL(self.PAGES[0]['url']) | |
121 thumbnail1 = self.GetNTPThumbnails()[0] | |
122 self.assertFalse(self.IsNTPThumbnailPinned(thumbnail1)) | |
123 self.PinNTPThumbnail(thumbnail1) | |
124 self.assertTrue(self.IsNTPThumbnailPinned(thumbnail1)) | |
125 self.UnpinNTPThumbnail(thumbnail1) | |
126 self.assertFalse(self.IsNTPThumbnailPinned(thumbnail1)) | |
127 | |
128 def testRemoveThumbnail(self): | 114 def testRemoveThumbnail(self): |
129 """Tests removing a thumbnail works""" | 115 """Tests removing a thumbnail works""" |
130 self.RemoveNTPDefaultThumbnails() | 116 self.RemoveNTPDefaultThumbnails() |
131 for page in self.PAGES: | 117 for page in self.PAGES: |
132 self.AppendTab(pyauto.GURL(page['url'])) | 118 self.AppendTab(pyauto.GURL(page['url'])) |
133 | 119 |
134 thumbnails = self.GetNTPThumbnails() | 120 thumbnails = self.GetNTPThumbnails() |
135 for thumbnail in thumbnails: | 121 for thumbnail in thumbnails: |
136 self.assertEquals(thumbnail, self.GetNTPThumbnails()[0]) | 122 self.assertEquals(thumbnail, self.GetNTPThumbnails()[0]) |
137 self.RemoveNTPThumbnail(thumbnail) | 123 self.RemoveNTPThumbnail(thumbnail) |
138 self.assertFalse(self._NTPContainsThumbnail(thumbnail)) | 124 self.assertFalse(self._NTPContainsThumbnail(thumbnail)) |
139 self.assertFalse(self.GetNTPThumbnails()) | 125 self.assertFalse(self.GetNTPThumbnails()) |
140 | 126 |
141 def testIncognitoNotAppearInMostVisited(self): | 127 def testIncognitoNotAppearInMostVisited(self): |
142 """Tests that visiting a page in incognito mode does cause it to appear in | 128 """Tests that visiting a page in incognito mode does cause it to appear in |
143 the Most Visited section""" | 129 the Most Visited section""" |
144 self.RemoveNTPDefaultThumbnails() | 130 self.RemoveNTPDefaultThumbnails() |
145 self.RunCommand(pyauto.IDC_NEW_INCOGNITO_WINDOW) | 131 self.RunCommand(pyauto.IDC_NEW_INCOGNITO_WINDOW) |
146 self.NavigateToURL(self.PAGES[0]['url'], 1, 0) | 132 self.NavigateToURL(self.PAGES[0]['url'], 1, 0) |
147 self.assertFalse(self.GetNTPThumbnails()) | 133 self.assertFalse(self.GetNTPThumbnails()) |
148 | 134 |
149 def testDifferentProfileNotAppearInMostVisited(self): | 135 def testDifferentProfileNotAppearInMostVisited(self): |
150 """Tests that visiting a page in one profile does not cause it to appear in | 136 """Tests that visiting a page in one profile does not cause it to appear in |
151 the Most Visited section of another.""" | 137 the Most Visited section of another.""" |
152 self.RemoveNTPDefaultThumbnails() | 138 self.RemoveNTPDefaultThumbnails() |
153 self.OpenNewBrowserWindowWithNewProfile() | 139 self.OpenNewBrowserWindowWithNewProfile() |
154 self.NavigateToURL(self.PAGES[0]['url'], 1, 0) | 140 self.NavigateToURL(self.PAGES[0]['url'], 1, 0) |
155 self.assertFalse(self.GetNTPThumbnails()) | 141 self.assertFalse(self.GetNTPThumbnails()) |
156 | 142 |
157 def testRestoreOncePinnedThumbnail(self): | |
158 """Tests that after restoring a once pinned thumbnail, the thumbnail is | |
159 not pinned""" | |
160 self.RemoveNTPDefaultThumbnails() | |
161 self.NavigateToURL(self.PAGES[0]['url']) | |
162 thumbnail1 = self.GetNTPThumbnails()[0] | |
163 self.PinNTPThumbnail(thumbnail1) | |
164 self.RemoveNTPThumbnail(thumbnail1) | |
165 self.RestoreAllNTPThumbnails() | |
166 self.RemoveNTPDefaultThumbnails() | |
167 self.assertFalse(self.IsNTPThumbnailPinned(thumbnail1)) | |
168 | |
169 def testThumbnailPersistence(self): | 143 def testThumbnailPersistence(self): |
170 """Tests that thumbnails persist across Chrome restarts""" | 144 """Tests that thumbnails persist across Chrome restarts""" |
171 self.RemoveNTPDefaultThumbnails() | 145 self.RemoveNTPDefaultThumbnails() |
172 for page in self.PAGES: | 146 for page in self.PAGES: |
173 self.AppendTab(pyauto.GURL(page['url'])) | 147 self.AppendTab(pyauto.GURL(page['url'])) |
174 thumbnails = self.GetNTPThumbnails() | 148 thumbnails = self.GetNTPThumbnails() |
175 self.MoveNTPThumbnail(thumbnails[0], 1) | 149 self.MoveNTPThumbnail(thumbnails[0], 1) |
176 thumbnails = self.GetNTPThumbnails() | 150 thumbnails = self.GetNTPThumbnails() |
177 | 151 |
178 self.RestartBrowser(clear_profile=False) | 152 self.RestartBrowser(clear_profile=False) |
(...skipping 17 matching lines...) Expand all Loading... |
196 for page in self.PAGES: | 170 for page in self.PAGES: |
197 self.AppendTab(pyauto.GURL(page['url'])) | 171 self.AppendTab(pyauto.GURL(page['url'])) |
198 thumbnails = self.GetNTPThumbnails() | 172 thumbnails = self.GetNTPThumbnails() |
199 self.assertEqual(self.PAGES[0]['url'], self.GetNTPThumbnails()[0]['url']) | 173 self.assertEqual(self.PAGES[0]['url'], self.GetNTPThumbnails()[0]['url']) |
200 self.AppendTab(pyauto.GURL(self.PAGES[1]['url'])) | 174 self.AppendTab(pyauto.GURL(self.PAGES[1]['url'])) |
201 self.assertEqual(self.PAGES[1]['url'], self.GetNTPThumbnails()[0]['url']) | 175 self.assertEqual(self.PAGES[1]['url'], self.GetNTPThumbnails()[0]['url']) |
202 self.AppendTab(pyauto.GURL(self.PAGES[0]['url'])) | 176 self.AppendTab(pyauto.GURL(self.PAGES[0]['url'])) |
203 self.AppendTab(pyauto.GURL(self.PAGES[0]['url'])) | 177 self.AppendTab(pyauto.GURL(self.PAGES[0]['url'])) |
204 self.assertEqual(self.PAGES[0]['url'], self.GetNTPThumbnails()[0]['url']) | 178 self.assertEqual(self.PAGES[0]['url'], self.GetNTPThumbnails()[0]['url']) |
205 | 179 |
206 def testPinnedThumbnailNeverMoves(self): | |
207 """Tests that once a thumnail is pinned it never moves""" | |
208 self.RemoveNTPDefaultThumbnails() | |
209 for page in self.PAGES: | |
210 self.AppendTab(pyauto.GURL(page['url'])) | |
211 self.PinNTPThumbnail(self.GetNTPThumbnails()[0]) | |
212 thumbnails = self.GetNTPThumbnails() | |
213 self.AppendTab(pyauto.GURL(self.PAGES[1]['url'])) | |
214 self.assertEqual(thumbnails, self.GetNTPThumbnails()) | |
215 | |
216 def testThumbnailTitleChangeAfterPageTitleChange(self): | 180 def testThumbnailTitleChangeAfterPageTitleChange(self): |
217 """Tests that once a page title changes, the thumbnail title changes too""" | 181 """Tests that once a page title changes, the thumbnail title changes too""" |
218 self.RemoveNTPDefaultThumbnails() | 182 self.RemoveNTPDefaultThumbnails() |
219 self.NavigateToURL(self.PAGES[0]['url']) | 183 self.NavigateToURL(self.PAGES[0]['url']) |
220 self.assertEqual(self.PAGES[0]['title'], | 184 self.assertEqual(self.PAGES[0]['title'], |
221 self.GetNTPThumbnails()[0]['title']) | 185 self.GetNTPThumbnails()[0]['title']) |
222 self.ExecuteJavascript('window.domAutomationController.send(' + | 186 self.ExecuteJavascript('window.domAutomationController.send(' + |
223 'document.title = "new title")') | 187 'document.title = "new title")') |
224 self.assertEqual('new title', self.GetNTPThumbnails()[0]['title']) | 188 self.assertEqual('new title', self.GetNTPThumbnails()[0]['title']) |
225 | 189 |
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
512 info = self.GetBrowserInfo() | 476 info = self.GetBrowserInfo() |
513 self.assertTrue(len(info['windows']) == 2, | 477 self.assertTrue(len(info['windows']) == 2, |
514 msg='A second window does not exist.') | 478 msg='A second window does not exist.') |
515 actual_tab_url = info['windows'][1]['tabs'][0]['url'] | 479 actual_tab_url = info['windows'][1]['tabs'][0]['url'] |
516 expected_app_url_start = 'chrome-extension://' + installed_app_id | 480 expected_app_url_start = 'chrome-extension://' + installed_app_id |
517 self.assertTrue(actual_tab_url.startswith(expected_app_url_start), | 481 self.assertTrue(actual_tab_url.startswith(expected_app_url_start), |
518 msg='The app was not launched in the new window.') | 482 msg='The app was not launched in the new window.') |
519 | 483 |
520 if __name__ == '__main__': | 484 if __name__ == '__main__': |
521 pyauto_functional.Main() | 485 pyauto_functional.Main() |
OLD | NEW |