Merge lp:~facundo/magicicada-gui/update-status into lp:magicicada-gui

Proposed by Facundo Batista
Status: Merged
Merged at revision: 31
Proposed branch: lp:~facundo/magicicada-gui/update-status
Merge into: lp:magicicada-gui
Diff against target: 62 lines (+37/-0)
2 files modified
magicicada/syncdaemon.py (+10/-0)
magicicada/tests/test_syncdaemon.py (+27/-0)
To merge this branch: bzr merge lp:~facundo/magicicada-gui/update-status
Reviewer Review Type Date Requested Status
Natalia Bidart Approve
Review via email: mp+26263@code.launchpad.net

Description of the change

Set status when name owner changes.

To post a comment you must log in.
Revision history for this message
Natalia Bidart (nataliabidart) wrote :

Very nice.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'magicicada/syncdaemon.py'
2--- magicicada/syncdaemon.py 2010-05-27 12:45:13 +0000
3+++ magicicada/syncdaemon.py 2010-05-28 02:13:24 +0000
4@@ -145,10 +145,20 @@
5 """SyncDaemon name owner changed."""
6 logger.info("SD Name Owner changed: %s", now_active)
7 self.current_state._set(is_started=now_active)
8+
9+ def set_status(name, description):
10+ """Set status after the name owner change."""
11+ d = dict(name=name, description=description, is_error=False,
12+ is_connected=False, is_online=False, queues='',
13+ connection='')
14+ self.current_state._set(**d)
15+
16 if now_active:
17+ set_status('STARTED', 'ubuntuone-client just started')
18 self.on_started_callback()
19 self._get_initial_data()
20 else:
21+ set_status('STOPPED', 'ubuntuone-client is stopped')
22 self.on_stopped_callback()
23
24 def on_sd_status_changed(self, *status_data):
25
26=== modified file 'magicicada/tests/test_syncdaemon.py'
27--- magicicada/tests/test_syncdaemon.py 2010-05-27 12:45:13 +0000
28+++ magicicada/tests/test_syncdaemon.py 2010-05-28 02:13:24 +0000
29@@ -189,6 +189,33 @@
30 self.assertEqual(self.sd.current_state.queues, 'queues2')
31 self.assertEqual(self.sd.current_state.connection, 'connection2')
32
33+ def test_on_stopped(self):
34+ """Stopped affects the status."""
35+ self.sd.on_sd_name_owner_changed(False)
36+ self.assertEqual(self.sd.current_state.name, 'STOPPED')
37+ self.assertEqual(self.sd.current_state.description,
38+ 'ubuntuone-client is stopped')
39+ self.assertEqual(self.sd.current_state.is_error, False)
40+ self.assertEqual(self.sd.current_state.is_connected, False)
41+ self.assertEqual(self.sd.current_state.is_online, False)
42+ self.assertEqual(self.sd.current_state.queues, '')
43+ self.assertEqual(self.sd.current_state.connection, '')
44+
45+ def test_on_started(self):
46+ """Started affects the status."""
47+ # make _get_initial_data dummy to not affect test
48+ self.sd._get_initial_data = lambda: None
49+
50+ self.sd.on_sd_name_owner_changed(True)
51+ self.assertEqual(self.sd.current_state.name, 'STARTED')
52+ self.assertEqual(self.sd.current_state.description,
53+ 'ubuntuone-client just started')
54+ self.assertEqual(self.sd.current_state.is_error, False)
55+ self.assertEqual(self.sd.current_state.is_connected, False)
56+ self.assertEqual(self.sd.current_state.is_online, False)
57+ self.assertEqual(self.sd.current_state.queues, '')
58+ self.assertEqual(self.sd.current_state.connection, '')
59+
60
61 class ContentQueueChangedTests(BaseTest):
62 """Check the ContenQueueChanged handling."""

Subscribers

People subscribed via source and target branches