~corey.bryant/charms/trusty/swift-storage/status

« back to all changes in this revision

Viewing changes to unit_tests/test_actions.py

  • Committer: Corey Bryant
  • Date: 2015-10-13 10:35:23 UTC
  • Revision ID: corey.bryant@canonical.com-20151013103523-exoymcadt4ag14u0
Use unitdata key/value pair to store pause/resume status

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
 
15
15
    def setUp(self):
16
16
        super(PauseTestCase, self).setUp(
17
 
            actions.actions, ["service_pause", "status_set"])
 
17
            actions.actions, ["service_pause", "HookData", "kv"])
18
18
 
19
19
        class FakeArgs(object):
20
20
            services = ['swift-account',
77
77
                                       'swift-account-reaper',
78
78
                                       'swift-account-replicator'])
79
79
 
80
 
    def test_status_mode(self):
81
 
        """Pause action sets the status to maintenance."""
82
 
        status_calls = []
83
 
        self.status_set.side_effect = lambda state, msg: status_calls.append(
84
 
            state)
85
 
 
86
 
        actions.actions.pause(self.args)
87
 
        self.assertEqual(status_calls, ["maintenance"])
88
 
 
89
 
    def test_status_message(self):
90
 
        """Pause action sets a status message reflecting that it's paused."""
91
 
        status_calls = []
92
 
        self.status_set.side_effect = lambda state, msg: status_calls.append(
93
 
            msg)
94
 
 
95
 
        actions.actions.pause(self.args)
96
 
        self.assertEqual(
97
 
            status_calls, ["Paused. "
98
 
                           "Use 'resume' action to resume normal service."])
 
80
    def test_pause_sets_value(self):
 
81
        """Pause action sets the unit-paused value to True."""
 
82
        self.HookData()().return_value = True
 
83
 
 
84
        actions.actions.pause(self.args)
 
85
        self.kv().set.assert_called_with('unit-paused', True)
99
86
 
100
87
 
101
88
class ResumeTestCase(CharmTestCase):
102
89
 
103
90
    def setUp(self):
104
91
        super(ResumeTestCase, self).setUp(
105
 
            actions.actions, ["service_resume", "status_set"])
 
92
            actions.actions, ["service_resume", "HookData", "kv"])
106
93
 
107
94
        class FakeArgs(object):
108
95
            services = ['swift-account',
164
151
                                        'swift-account-reaper',
165
152
                                        'swift-account-replicator'])
166
153
 
167
 
    def test_status_mode(self):
168
 
        """Resume action sets the status to maintenance."""
169
 
        status_calls = []
170
 
        self.status_set.side_effect = lambda state, msg: status_calls.append(
171
 
            state)
172
 
 
173
 
        actions.actions.resume(self.args)
174
 
        self.assertEqual(status_calls, ["active"])
175
 
 
176
 
    def test_status_message(self):
177
 
        """Resume action sets an empty status message."""
178
 
        status_calls = []
179
 
        self.status_set.side_effect = lambda state, msg: status_calls.append(
180
 
            msg)
181
 
 
182
 
        actions.actions.resume(self.args)
183
 
        self.assertEqual(status_calls, [""])
 
154
    def test_resume_sets_value(self):
 
155
        """Resume action sets the unit-paused value to False."""
 
156
        self.HookData()().return_value = True
 
157
 
 
158
        actions.actions.resume(self.args)
 
159
        self.kv().set.assert_called_with('unit-paused', False)
184
160
 
185
161
 
186
162
class GetActionParserTestCase(unittest.TestCase):