Merge lp:~rockstar/launchpad/cleanup-javascript into lp:launchpad

Proposed by Paul Hummer
Status: Merged
Merged at revision: not available
Proposed branch: lp:~rockstar/launchpad/cleanup-javascript
Merge into: lp:launchpad
Diff against target: 271 lines
3 files modified
lib/lp/code/windmill/test_branch_sparks.py (+0/-29)
lib/lp/code/windmill/tests/test_branch_subscriptions.py (+79/-61)
lib/lp/code/windmill/tests/test_code_review.py (+40/-26)
To merge this branch: bzr merge lp:~rockstar/launchpad/cleanup-javascript
Reviewer Review Type Date Requested Status
Barry Warsaw Pending
Review via email: mp+13143@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Paul Hummer (rockstar) wrote :

Hi Barry-

  This branch just moves all the code windmill tests to CodeWindmillLayer. It also deletes the branch sparklines test, because, while the idea was cool, the implementation sucked, and so we disabled them for now. When they come back, it's best to just write new tests.

  The tests themselves are still failing in this branch, but I've got another pipe to get them all working again.

Cheers,
Paul

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== removed file 'lib/lp/code/windmill/test_branch_sparks.py'
2--- lib/lp/code/windmill/test_branch_sparks.py 2009-08-13 15:12:16 +0000
3+++ lib/lp/code/windmill/test_branch_sparks.py 1970-01-01 00:00:00 +0000
4@@ -1,29 +0,0 @@
5-# Copyright 2009 Canonical Ltd. All rights reserved.
6-
7-"""Test for branch spark lines."""
8-
9-__metaclass__ = type
10-__all__ = []
11-
12-import windmill
13-from windmill.authoring import WindmillTestClient
14-
15-from canonical.launchpad.windmill.testing import lpuser
16-
17-
18-def test_branch_sparks_var():
19- """Test branch bug links."""
20- client = WindmillTestClient("Branch bug links")
21-
22- client.open(
23- url=windmill.settings['TEST_URL'] + '/~mark/')
24- client.waits.forPageLoad(timeout=u'10000')
25- client.asserts.assertJS(js=u'''(function() {
26- return branch_sparks.length == 5;
27- }());''')
28- client.asserts.assertJS(js=u'''(function() {
29- var first_branch_spark = branch_sparks[0];
30- return (first_branch_spark[0] == 'b-1' &&
31- first_branch_spark[1] == '%s/~mark/+junk/testdoc/+spark')
32- }());''' % (windmill.settings['TEST_URL']))
33-
34
35=== renamed file 'lib/lp/code/windmill/test_branch_subscriptions.py' => 'lib/lp/code/windmill/tests/test_branch_subscriptions.py'
36--- lib/lp/code/windmill/test_branch_subscriptions.py 2009-08-13 15:12:16 +0000
37+++ lib/lp/code/windmill/tests/test_branch_subscriptions.py 2009-10-09 22:53:17 +0000
38@@ -6,74 +6,92 @@
39 __metaclass__ = type
40 __all__ = []
41
42+import unittest
43+
44 import windmill
45 from windmill.authoring import WindmillTestClient
46
47 from canonical.launchpad.windmill.testing import lpuser
48+from lp.code.windmill.testing import CodeWindmillLayer
49+from lp.testing import TestCaseWithFactory
50+
51
52
53 # XXX: rockstar - Also needs testing : Admins can edit/delete, members of the
54 # team can edit/delete. At least the latter will require the Launchpad object
55 # factory.
56
57-def test_branch_subscription_ajax_load():
58- """Test branch subscriptions loaded via ajax."""
59- client = WindmillTestClient("Branch Subscription Ajax Load Test")
60-
61- lpuser.FOO_BAR.ensure_login(client)
62-
63- client.open(
64- url=windmill.settings['TEST_URL'] + '/~mark/firefox/release--0.9.1')
65- client.waits.forElement(id=u'none-subscribers', timeout=u'10000')
66- client.asserts.assertText(id=u'selfsubscription',
67- validator='Subscribe yourself')
68- client.asserts.assertText(id=u'none-subscribers',
69- validator=u'No subscribers.')
70-
71- client.click(id=u'selfsubscription')
72- client.waits.forElement(id=u'yui-pretty-overlay-modal')
73- client.click(xpath=u'//button[@name="field.actions.change"]')
74-
75- client.waits.forElement(id=u'editsubscription-icon-name16',
76- timeout=u'10000')
77- client.asserts.assertText(id=u'subscriber-name16',
78- validator=u'Foo Bar')
79- client.asserts.assertText(id=u'selfsubscription',
80- validator=u'Edit your subscription')
81-
82-
83- # And now to unsubscribe
84- client.click(id=u'editsubscription-icon-name16')
85-
86- client.waits.forPageLoad(timeout=u'100000')
87- client.click(id=u'field.actions.unsubscribe')
88-
89- client.waits.forElement(id=u'none-subscribers', timeout=u'10000')
90- client.asserts.assertText(id=u'selfsubscription',
91- validator='Subscribe yourself')
92- client.asserts.assertText(id=u'none-subscribers',
93- validator=u'No subscribers.')
94-
95-
96-def test_team_edit_subscription_ajax_load():
97- """Test that team subscriptions are editable through the ajax portlet."""
98- client = WindmillTestClient("Branch Subscription Ajax Load Test")
99-
100- lpuser.SAMPLE_PERSON.ensure_login(client)
101-
102- client.open(
103- url=windmill.settings['TEST_URL'] + '/~name12/landscape/feature-x/')
104- client.waits.forPageLoad(timeout=u'10000')
105-
106- client.waits.forElement(id=u'editsubscription-icon-landscape-developers',
107- timeout=u'10000')
108- client.asserts.assertText(id=u'subscriber-landscape-developers',
109- validator=u'Landscape Developers')
110- client.click(id=u'editsubscription-icon-landscape-developers')
111-
112- client.waits.forPageLoad(timeout=u'100000')
113- client.click(id=u'field.actions.unsubscribe')
114-
115- client.waits.forElement(id=u'none-subscribers', timeout=u'10000')
116- client.asserts.assertText(id=u'none-subscribers',
117- validator=u'No subscribers.')
118+class TestBranchSubscriptions(TestCaseWithFactory):
119+ """Test subscriptions to branches."""
120+
121+ layer = CodeWindmillLayer
122+
123+ def test_branch_subscription_ajax_load(self):
124+ """Test branch subscriptions loaded via ajax.
125+ """
126+
127+ client = WindmillTestClient("Branch Subscription Ajax Load Test")
128+
129+ lpuser.FOO_BAR.ensure_login(client)
130+
131+ client.open(url=(
132+ windmill.settings['TEST_URL'] + '/~mark/firefox/release--0.9.1'))
133+ client.waits.forElement(id=u'none-subscribers', timeout=u'10000')
134+ client.asserts.assertText(id=u'selfsubscription',
135+ validator='Subscribe yourself')
136+ client.asserts.assertText(id=u'none-subscribers',
137+ validator=u'No subscribers.')
138+
139+ client.click(id=u'selfsubscription')
140+ client.waits.forElement(id=u'yui-pretty-overlay-modal')
141+ client.click(xpath=u'//button[@name="field.actions.change"]')
142+
143+ client.waits.forElement(id=u'editsubscription-icon-name16',
144+ timeout=u'10000')
145+ client.asserts.assertText(id=u'subscriber-name16',
146+ validator=u'Foo Bar')
147+ client.asserts.assertText(id=u'selfsubscription',
148+ validator=u'Edit your subscription')
149+
150+ # And now to unsubscribe
151+ client.click(id=u'editsubscription-icon-name16')
152+
153+ client.waits.forPageLoad(timeout=u'100000')
154+ client.click(id=u'field.actions.unsubscribe')
155+
156+ client.waits.forElement(id=u'none-subscribers', timeout=u'10000')
157+ client.asserts.assertText(id=u'selfsubscription',
158+ validator='Subscribe yourself')
159+ client.asserts.assertText(id=u'none-subscribers',
160+ validator=u'No subscribers.')
161+
162+ def test_team_edit_subscription_ajax_load(self):
163+ """Test that team subscriptions are editable through the ajax portlet.
164+ """
165+
166+ client = WindmillTestClient("Branch Subscription Ajax Load Test")
167+
168+ lpuser.SAMPLE_PERSON.ensure_login(client)
169+
170+ client.open(url=''.join([
171+ windmill.settings['TEST_URL'],
172+ '/~name12/landscape/feature-x/']))
173+ client.waits.forPageLoad(timeout=u'10000')
174+
175+ client.waits.forElement(
176+ id=u'editsubscription-icon-landscape-developers',
177+ timeout=u'10000')
178+ client.asserts.assertText(id=u'subscriber-landscape-developers',
179+ validator=u'Landscape Developers')
180+ client.click(id=u'editsubscription-icon-landscape-developers')
181+
182+ client.waits.forPageLoad(timeout=u'100000')
183+ client.click(id=u'field.actions.unsubscribe')
184+
185+ client.waits.forElement(id=u'none-subscribers', timeout=u'10000')
186+ client.asserts.assertText(id=u'none-subscribers',
187+ validator=u'No subscribers.')
188+
189+
190+def test_suite():
191+ return unittest.TestLoader().loadTestsFromName(__name__)
192
193=== renamed file 'lib/lp/code/windmill/test_code_review.py' => 'lib/lp/code/windmill/tests/test_code_review.py'
194--- lib/lp/code/windmill/test_code_review.py 2009-08-31 09:50:17 +0000
195+++ lib/lp/code/windmill/tests/test_code_review.py 2009-10-09 22:53:17 +0000
196@@ -5,35 +5,49 @@
197 __metaclass__ = type
198 __all__ = []
199
200+import unittest
201+
202 import windmill
203 from windmill.authoring import WindmillTestClient
204
205 from canonical.launchpad.windmill.testing import lpuser
206 from canonical.launchpad.windmill.testing.widgets import (
207 search_picker_widget)
208-
209-
210-MERGE_LINK = '%s/~name12/gnome-terminal/klingon/+register-merge' % (
211- windmill.settings['TEST_URL'])
212-
213-def test_inline_request_a_reviewer():
214- """Test inline request a reviewer."""
215- client = WindmillTestClient("Code review")
216-
217- lpuser.FOO_BAR.ensure_login(client)
218-
219- client.open(
220- url=windmill.settings['TEST_URL'] + '/~name12/gnome-terminal/klingon/')
221- client.waits.forPageLoad(timeout=u'10000')
222-
223- client.click(xpath=u'//a[@href="%s"]' % MERGE_LINK)
224- client.type(text=u'~name12/gnome-terminal/main',
225- id=u'field.target_branch.target_branch')
226- client.click(id=u'field.actions.register')
227-
228- client.waits.forPageLoad(timeout=u'10000')
229- client.click(id=u'request-review')
230-
231- search_picker_widget(client, u'mark', 1)
232-
233- client.waits.forElement(id=u'review-mark', timeout=u'10000')
234+from lp.code.windmill.testing import CodeWindmillLayer
235+from lp.testing import TestCaseWithFactory
236+
237+
238+class TestCodeReview(TestCaseWithFactory):
239+ """Test the javascript functions of code review."""
240+
241+ layer = CodeWindmillLayer
242+
243+ def test_inline_request_a_reviewer(self):
244+ """Test inline request a reviewer."""
245+ MERGE_LINK = '%s/~name12/gnome-terminal/klingon/+register-merge' % (
246+ windmill.settings['TEST_URL'])
247+
248+ client = WindmillTestClient("Code review")
249+
250+ lpuser.FOO_BAR.ensure_login(client)
251+
252+ client.open(url=''.join([
253+ windmill.settings['TEST_URL'],
254+ '/~name12/gnome-terminal/klingon/']))
255+ client.waits.forPageLoad(timeout=u'10000')
256+
257+ client.click(xpath=u'//a[@href="%s"]' % MERGE_LINK)
258+ client.type(text=u'~name12/gnome-terminal/main',
259+ id=u'field.target_branch.target_branch')
260+ client.click(id=u'field.actions.register')
261+
262+ client.waits.forPageLoad(timeout=u'10000')
263+ client.click(id=u'request-review')
264+
265+ search_picker_widget(client, u'mark', 1)
266+
267+ client.waits.forElement(id=u'review-mark', timeout=u'10000')
268+
269+
270+def test_suite():
271+ return unittest.TestLoader().loadTestsFromName(__name__)