Merge lp:~mandel/ubuntuone-client/add_public_files_remote_object_tests into lp:ubuntuone-client

Proposed by Manuel de la Peña
Status: Merged
Approved by: Manuel de la Peña
Approved revision: 874
Merged at revision: 895
Proposed branch: lp:~mandel/ubuntuone-client/add_public_files_remote_object_tests
Merge into: lp:ubuntuone-client
Prerequisite: lp:~mandel/ubuntuone-client/add_syncdaemon_remote_object_tests
Diff against target: 290 lines (+276/-0)
1 file modified
tests/platform/windows/test_ipc.py (+276/-0)
To merge this branch: bzr merge lp:~mandel/ubuntuone-client/add_public_files_remote_object_tests
Reviewer Review Type Date Requested Status
Roberto Alsina (community) Approve
Alejandro J. Cura (community) Approve
Review via email: mp+50914@code.launchpad.net

Commit message

Add the rests of the tests to be passed by the implementation of the remote objects on Windows.

Description of the change

Add the rests of the tests to be passed by the implementation of the remote objects on Windows.

To post a comment you must log in.
Revision history for this message
Alejandro J. Cura (alecu) wrote :

Thanks for all the fish!

review: Approve
Revision history for this message
Roberto Alsina (ralsina) wrote :

+1

review: Approve
Revision history for this message
Ubuntu One Auto Pilot (otto-pilot) wrote :

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'tests/platform/windows/test_ipc.py'
2--- tests/platform/windows/test_ipc.py 2011-02-23 12:43:22 +0000
3+++ tests/platform/windows/test_ipc.py 2011-02-23 12:43:22 +0000
4@@ -33,6 +33,9 @@
5 self.status = None
6 self.events = None
7 self.sync = None
8+ self.shares = None
9+ self.folders = None
10+ self.public_files = None
11
12 class TestSignalBroadcaster(MockerTestCase):
13 """Test the signal brocaster code."""
14@@ -209,3 +212,276 @@
15 self.signal_method('on_quota_exceeded', volume_dict)
16 self.mocker.replay()
17 self.sync.emit_quota_exceeded(volume_dict)
18+
19+
20+class TestSharesEmitSignals(PerspectiveBrokerTestCase, MockerTestCase):
21+ """Test that the emit method have been correctly implemented."""
22+
23+ def setUp(self):
24+ """Setup tests."""
25+ super(TestEventsEmitSignals, self).setUp()
26+ self.signal_method = self.mocker.mock()
27+ self.shares.emit_signal = self.signal_method
28+ self.shares.syncdaemon_shares = self.mocker.mock()
29+ self.get_share_dict = self.mocker.replace(
30+ 'ubuntuone.syncdaemon.interaction_interfaces.get_share_dict')
31+
32+ def test_emit_share_changed_deleted(self):
33+ """Test emit share changed on a delete event."""
34+ message = 'deleted'
35+ share = 'share'
36+ share_dict = 'share_dict'
37+ self.get_share_dict(share)
38+ self.mocker.result(share_dict)
39+ self.signal_method('on_share_deleted', share_dict)
40+ self.mocker.replay()
41+ self.shares.emit_share_changed(message, share)
42+
43+ def test_emit_share_changed_changed(self):
44+ """Test emit share changed on a changed event."""
45+ message = 'changed'
46+ share = 'share'
47+ share_dict = 'share_dict'
48+ self.get_share_dict(share)
49+ self.mocker.result(share_dict)
50+ self.signal_method('on_share_changed', share_dict)
51+ self.mocker.replay()
52+ self.shares.emit_share_changed(message, share)
53+
54+ def test_emit_share_delete_error(self):
55+ """Emit ShareDeleteError signal."""
56+ share = 'share'
57+ error = 'error'
58+ share_dict = 'share_dict'
59+ self.get_share_dict(share)
60+ self.mocker.result(share_dict)
61+ self.signal_method('on_share_deleted_error', share_dict, error)
62+
63+ def test_emit_free_space(self):
64+ """Emit ShareChanged when free space changes """
65+ free_bytes = '0'
66+ share_dict = shares = {'1': 'share', 'free_bytes':'0' }
67+ share = 'share'
68+ share_id = '1'
69+ self.shares.syncdaemon_shares.shares
70+ self.mocker.result(shares)
71+ self.shares.syncdaemon_shares.shares
72+ self.mocker.result(shares)
73+ self.get_share_dict(share)
74+ self.mocker.result(share_dict)
75+ self.signal_method(share_dict)
76+ self.mocker.replay()
77+ self.shares.emit_free_space(share_id, free_bytes)
78+
79+ def test_emit_share_created(self):
80+ """Emit ShareCreated signal """
81+ share_info = 'info'
82+ self.signal_method(share_info)
83+ self.mocker.replay()
84+ self.shares.emit_share_created(share_info)
85+
86+ def test_emit_share_create_error(self):
87+ """Emit ShareCreateError signal."""
88+ share_info = 'id'
89+ error = 'error'
90+ info = 'info'
91+ self.shares.syncdaemon_shares.get_create_error_share_info(share_info)
92+ self.mocker.result(info)
93+ self.signal_method(info, error)
94+ self.mocker.replay()
95+ self.shares.emit_share_create_error(share_info, error)
96+
97+ def test_emit_share_answer_response(self):
98+ """Emits ShareAnswerResponse signal."""
99+ share_id = 'id'
100+ answer = 'yes'
101+ error = 'boom'
102+ answer_info = dict(volume_id=share_id, answer=answer, error=error)
103+ self.signal_method(answer_info)
104+ self.mocker.replay()
105+ self.shares.emit_share_answer_response(share_id, answer, error)
106+
107+ def test_emit_new_share(self):
108+ """Emits NewShare signal."""
109+ share_id = 'id'
110+ share = 'share'
111+ share_dict = {'share':'id'}
112+ self.shares.syncdaemon_shares.get_volume(share_id)
113+ self.mocker.result(share)
114+ self.get_share_dict(share)
115+ self.mocker.result(share_dict)
116+ self.signal_method(share_dict)
117+ self.mocker.replay()
118+ self.shares.emit_new_share(share_id)
119+
120+ def test_emit_share_subscribed(self):
121+ """Emit the ShareSubscribed signal"""
122+ share = 'share'
123+ share_dict = {'share' : 'id'}
124+ self.get_share_dict(share)
125+ self.mocker.result(share_dict)
126+ self.signal_method(share_dict)
127+ self.mocker.replay()
128+ self.shares.emit_share_subscribed(share)
129+
130+ def test_emit_share_subscribe_error(self):
131+ """Emit the ShareSubscribeError signal"""
132+ share_id = 'id'
133+ error = 'error'
134+ self.signal_method({'id': share_id}, str(error))
135+ self.mocker.replay()
136+ self.shares.emit_share_subscribe_error(share_id, error)
137+
138+ def test_emit_share_unsubscribed(self):
139+ """Emit the ShareUnSubscribed signal"""
140+ share = 'share'
141+ share_dict = {'share':'id'}
142+ self.get_share_dict(share)
143+ self.mocker.result(share_dict)
144+ self.signal_method(share_dict)
145+ self.mocker.replay()
146+ self.shares.emit_share_unsubscribed(share)
147+
148+ def test_emit_share_unsubscribe_error(self):
149+ """Emit the ShareUnSubscribeError signal"""
150+ share_id = 'id'
151+ error = 'error'
152+ self.signal_method({'id': share_id}, str(error))
153+ self.mocker.replay()
154+ self.shares.emit_share_unsubscribe_error(share_id, error)
155+
156+
157+class TestFoldersEmitSignals(PerspectiveBrokerTestCase, MockerTestCase):
158+ """Test that the emit method have been correctly implemented."""
159+
160+ def setUp(self):
161+ """Setup tests."""
162+ super(TestFoldersEmitSignals, self).setUp()
163+ self.signal_method = self.mocker.mock()
164+ self.get_udf_dict = self.mocker.replace(
165+ 'ubuntuone.syncdaemon.interaction_interfaces.get_udf_dict')
166+
167+ def test_emit_folder_deleted(self):
168+ """Emit the FolderCreated signal"""
169+ folder = 'folder'
170+ udf_dict = {'udf':'id'}
171+ self.get_udf_dict(folder)
172+ self.mocker.result(udf_dict)
173+ self.signal_method(udf_dict)
174+ self.mocker.replay()
175+ self.folders.emit_folder_deleted(folder)
176+
177+ def test_emit_folder_delete_error(self):
178+ """Emit the FolderCreateError signal"""
179+ folder = 'folder'
180+ error = 'error'
181+ udf_dict = {'udf':'id'}
182+ self.get_udf_dict(folder)
183+ self.mocker.result(udf_dict)
184+ self.signal_method(udf_dict, str(error))
185+ self.mocker.replay()
186+ self.folders.emit_folder_delete_error(folder, error)
187+
188+ def test_emit_folder_subscribed(self):
189+ """Emit the FolderSubscribed signal"""
190+ folder = 'folder'
191+ udf_dict = {'udf':'id'}
192+ self.get_udf_dict(folder)
193+ self.mocker.result(udf_dict)
194+ self.signal_method(udf_dict)
195+ self.mocker.replay()
196+ self.folders.emit_folder_subscribed(folder)
197+
198+ def test_emit_folder_subscribe_error(self):
199+ """Emit the FolderSubscribeError signal"""
200+ folder_id = 'id'
201+ error = 'error'
202+ self.signal_method({'id':folder_id}, str(error))
203+ self.mocker.replay()
204+ self.folders.emit_folder_subscribe_error(folder_id, error)
205+
206+ def test_emit_folder_unsubscribed(self):
207+ """Emit the FolderUnSubscribed signal"""
208+ folder = 'folder'
209+ udf_dict = {'udf':'id'}
210+ self.get_udf_dict(folder)
211+ self.mocker.result(udf_dict)
212+ self.signal_method(udf_dict)
213+ self.mocker.replay()
214+ self.folders.emit_folder_unsubscribed(folder)
215+
216+ def test_emit_folder_unsubscribe_error(self):
217+ """Emit the FolderUnSubscribeError signal"""
218+ folder_id = 'id'
219+ error = 'error'
220+ self.signal_method({'id':folder_id}, str(error))
221+ self.mocker.replay()
222+ self.folders.emit_folder_unsubscribe_error(folder_id, error)
223+
224+
225+class TestPublicFilesEmitSignals(PerspectiveBrokerTestCase, MockerTestCase):
226+ """Test that the emit method have been correctly implemented."""
227+
228+ def setUp(self):
229+ """Setup tests."""
230+ super(TestPublicFilesEmitSignals, self).setUp()
231+ self.signal_method = self.mocker.mock()
232+ self.public_files.syncdaemon_public_files = self.mocker.mock()
233+ self.bool_str = self.mocker.replace(
234+ 'ubuntuone.syncdaemon.interaction_interfaces.bool_str')
235+
236+ def test_emit_public_access_changed(self):
237+ """Emit the PublicAccessChanged signal."""
238+ share_id = 'share_id'
239+ node_id = 'node_id'
240+ path = 'path'
241+ is_public = True
242+ public_url = 'url'
243+ self.public_files.syncdaemon_public_files.get_path(share_id, node_id)
244+ self.mocker.result(path)
245+ self.bool_str(is_public)
246+ self.mocker.result('True')
247+ self.signal_method(dict(share_id=share_id, node_id=node_id,
248+ is_public='True', public_url=public_url,
249+ path=path))
250+ self.mocker.replay()
251+ self.public_files.emit_public_access_changed(share_id, node_id,
252+ is_public, public_url)
253+
254+ def test_emit_public_access_change_error(self):
255+ """Emit the PublicAccessChangeError signal."""
256+ share_id = 'share_id'
257+ node_id = 'node_id'
258+ error = 'error'
259+ path = 'path'
260+ self.public_files.syncdaemon_public_files.get_path(share_id, node_id)
261+ self.mocker.result(path)
262+ self.signal_method(dict(share_id=share_id, node_id=node_id, path=path),
263+ error)
264+ self.mocker.replay()
265+ self.public_files.emit_public_access_change_error(share_id, node_id,
266+ error)
267+
268+ def test_emit_public_files_list(self):
269+ """Emit the PublicFilesList signal."""
270+ volume_id = 'volume_id'
271+ node_id = 'node_id'
272+ public_url = 'url'
273+ path = 'path'
274+ public_files = [dict(volume_id=volume_id, node_id=node_id,
275+ public_url=public_url)]
276+ files = [dict(volume_id=volume_id, node_id=node_id,
277+ public_url=public_url, path=path)]
278+ self.public_files.syncdaemon_public_files.get_path(volume_id, node_id)
279+ self.mocker.result(path)
280+ self.signal_method(files)
281+ self.mocker.replay()
282+ self.public_files.emit_public_files_list(public_files)
283+
284+ def test_emit_public_files_list_error(self):
285+ """Emit the PublicFilesListError signal."""
286+ error = 'error'
287+ self.signal_method(error)
288+ self.mocker.replay()
289+ self.public_files.emit_public_files_list_error(error)
290+

Subscribers

People subscribed via source and target branches