Merge ~hloeung/jenkins-agent-charm:master into jenkins-agent-charm:master
- Git
- lp:~hloeung/jenkins-agent-charm
- master
- Merge into master
Proposed by
Haw Loeung
Status: | Merged |
---|---|
Approved by: | Haw Loeung |
Approved revision: | 51a32c89dadc12f048a558da77fb2ec278d0f9a1 |
Merged at revision: | df2982b314a496a316328138aaded522973dc636 |
Proposed branch: | ~hloeung/jenkins-agent-charm:master |
Merge into: | jenkins-agent-charm:master |
Diff against target: |
238 lines (+26/-38) 1 file modified
tests/unit/test_jenkins_slave.py (+26/-38) |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Stuart Bishop (community) | Approve | ||
Review via email: mp+365382@code.launchpad.net |
Commit message
Fixed to import entire module and prefix based on reviews
Description of the change
To post a comment you must log in.
Revision history for this message
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote : | # |
Revision history for this message
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote : | # |
Change successfully merged at revision df2982b314a496a
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | diff --git a/tests/unit/test_jenkins_slave.py b/tests/unit/test_jenkins_slave.py |
2 | index 53e0e51..9793742 100644 |
3 | --- a/tests/unit/test_jenkins_slave.py |
4 | +++ b/tests/unit/test_jenkins_slave.py |
5 | @@ -19,19 +19,7 @@ from charms.layer import status # NOQA: E402 |
6 | |
7 | # Add path to where our reactive layer lives and import. |
8 | sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(os.path.realpath(__file__))))) |
9 | -from reactive.jenkins_slave import ( |
10 | - upgrade_charm, |
11 | - config_changed, |
12 | - install, |
13 | - configure_jenkins_slave, |
14 | - blocked_on_jenkins_url, |
15 | - set_active, |
16 | - slave_relation_changed, |
17 | - slave_relation_removed, |
18 | - slave_relation, |
19 | - file_to_units, |
20 | - write_default_conf, |
21 | -) # NOQA: E402 |
22 | +from reactive import jenkins_slave # NOQA: E402 |
23 | |
24 | |
25 | INITIAL_CONF = 'tests/unit/files/jenkins-slave-default' |
26 | @@ -93,7 +81,7 @@ class TestSetDefaultConf(unittest.TestCase): |
27 | @mock.patch('charms.reactive.clear_flag') |
28 | def test_hook_upgrade_charm_flags(self, clear_flag): |
29 | '''Test correct flags set via upgrade-charm hook''' |
30 | - upgrade_charm() |
31 | + jenkins_slave.upgrade_charm() |
32 | self.assertFalse(status.maintenance.assert_called()) |
33 | expected = [mock.call('jenkins-slave.active'), mock.call('jenkins-slave.installed')] |
34 | self.assertFalse(clear_flag.assert_has_calls(expected, any_order=True)) |
35 | @@ -101,7 +89,7 @@ class TestSetDefaultConf(unittest.TestCase): |
36 | @mock.patch('charms.reactive.clear_flag') |
37 | def test_hook_config_changed(self, clear_flag): |
38 | '''Test correct flags are set via config-changed charm hook''' |
39 | - config_changed() |
40 | + jenkins_slave.config_changed() |
41 | self.assertFalse(status.maintenance.assert_called()) |
42 | expected = [mock.call('jenkins-slave.blocked'), |
43 | mock.call('jenkins-slave.configured'), |
44 | @@ -122,7 +110,7 @@ class TestSetDefaultConf(unittest.TestCase): |
45 | config.return_value = {'tools': 'some-tools-package'} |
46 | apt.install_queued.return_value = True |
47 | user_exists.return_value = False |
48 | - install() |
49 | + jenkins_slave.install() |
50 | self.assertFalse(status.maintenance.assert_called()) |
51 | |
52 | expected = [mock.call(home_dir='/var/lib/jenkins', system_user=True, username='jenkins')] |
53 | @@ -143,13 +131,13 @@ class TestSetDefaultConf(unittest.TestCase): |
54 | |
55 | apt.install_queued.return_value = False |
56 | apt_purge.reset_mock() |
57 | - install() |
58 | + jenkins_slave.install() |
59 | self.assertFalse(apt_purge.assert_not_called()) |
60 | |
61 | apt.install_queued.return_value = True |
62 | user_exists.return_value = True |
63 | adduser.reset_mock() |
64 | - install() |
65 | + jenkins_slave.install() |
66 | self.assertFalse(adduser.assert_not_called()) |
67 | |
68 | @mock.patch('charmhelpers.core.host.lsb_release') |
69 | @@ -160,7 +148,7 @@ class TestSetDefaultConf(unittest.TestCase): |
70 | def test_hook_install_trusty(self, write_default_conf, file_to_units, mkdir, adduser, lsb_release): |
71 | apt.install_queued.return_value = True |
72 | lsb_release.return_value = {'DISTRIB_CODENAME': 'trusty'} |
73 | - install() |
74 | + jenkins_slave.install() |
75 | self.assertFalse(status.maintenance.assert_called()) |
76 | |
77 | # file_to_units('files/jenkins-slave-upstart-config', '/etc/init/jenkins-slave.conf') |
78 | @@ -177,7 +165,7 @@ class TestSetDefaultConf(unittest.TestCase): |
79 | set_flag, clear_flag): |
80 | config.return_value = {} |
81 | unitdata_kv.return_value = {} |
82 | - configure_jenkins_slave() |
83 | + jenkins_slave.configure_jenkins_slave() |
84 | self.assertFalse(write_default_conf.assert_not_called()) |
85 | self.assertFalse(set_flag.assert_has_calls([mock.call('jenkins-slave.blocked')], any_order=True)) |
86 | self.assertFalse(clear_flag.assert_has_calls([mock.call('jenkins-slave.active')], any_order=True)) |
87 | @@ -192,7 +180,7 @@ class TestSetDefaultConf(unittest.TestCase): |
88 | set_flag, clear_flag): |
89 | config.return_value = {'master_url': 'http://10.1.1.1:8080'} |
90 | unitdata_kv.return_value = {} |
91 | - configure_jenkins_slave() |
92 | + jenkins_slave.configure_jenkins_slave() |
93 | self.assertFalse(write_default_conf.assert_called_once_with('http://10.1.1.1:8080')) |
94 | self.assertFalse(set_flag.assert_has_calls([mock.call('jenkins-slave.configured')], any_order=True)) |
95 | expected = [mock.call('jenkins-slave.active'), mock.call('nagios-nrpe.configured')] |
96 | @@ -208,7 +196,7 @@ class TestSetDefaultConf(unittest.TestCase): |
97 | set_flag, clear_flag): |
98 | config.return_value = {} |
99 | unitdata_kv.return_value = {'url': 'http://10.22.22.22:8080'} |
100 | - configure_jenkins_slave() |
101 | + jenkins_slave.configure_jenkins_slave() |
102 | self.assertTrue(write_default_conf.called_once_with('http://10.22.22.22:8080')) |
103 | self.assertFalse(set_flag.assert_has_calls([mock.call('jenkins-slave.configured')], any_order=True)) |
104 | expected = [mock.call('jenkins-slave.active'), mock.call('nagios-nrpe.configured')] |
105 | @@ -216,7 +204,7 @@ class TestSetDefaultConf(unittest.TestCase): |
106 | |
107 | @mock.patch('charms.reactive.clear_flag') |
108 | def test_blocked_on_jenkins_url(self, clear_flag): |
109 | - blocked_on_jenkins_url() |
110 | + jenkins_slave.blocked_on_jenkins_url() |
111 | self.assertFalse(clear_flag.assert_has_calls([mock.call('jenkins-slave.active')], any_order=True)) |
112 | |
113 | @mock.patch('charmhelpers.core.host.service_running') |
114 | @@ -225,7 +213,7 @@ class TestSetDefaultConf(unittest.TestCase): |
115 | def test_set_active_running(self, service_start, service_restart, service_running): |
116 | '''Test service restarted when already running''' |
117 | service_running.return_value = True |
118 | - set_active() |
119 | + jenkins_slave.set_active() |
120 | self.assertFalse(status.maintenance.assert_called()) |
121 | self.assertFalse(service_start.assert_not_called()) |
122 | self.assertFalse(service_restart.assert_called_once_with('jenkins-slave')) |
123 | @@ -236,7 +224,7 @@ class TestSetDefaultConf(unittest.TestCase): |
124 | def test_set_active_not_running(self, service_start, service_restart, service_running): |
125 | '''Test service restarted when not running''' |
126 | service_running.return_value = False |
127 | - set_active() |
128 | + jenkins_slave.set_active() |
129 | self.assertFalse(status.maintenance.assert_called()) |
130 | self.assertFalse(service_start.assert_called_once_with('jenkins-slave')) |
131 | self.assertFalse(service_restart.assert_not_called()) |
132 | @@ -244,7 +232,7 @@ class TestSetDefaultConf(unittest.TestCase): |
133 | @mock.patch('charms.reactive.clear_flag') |
134 | @mock.patch('charms.reactive.set_flag') |
135 | def test_hook_slave_relation_changed_flags(self, set_flag, clear_flag): |
136 | - slave_relation_changed() |
137 | + jenkins_slave.slave_relation_changed() |
138 | expected = [ |
139 | mock.call('jenkins-slave.blocked'), |
140 | mock.call('jenkins-slave.configured'), |
141 | @@ -255,7 +243,7 @@ class TestSetDefaultConf(unittest.TestCase): |
142 | |
143 | @mock.patch('charms.reactive.clear_flag') |
144 | def test_hook_slave_relation_removed_flags(self, clear_flag): |
145 | - slave_relation_removed() |
146 | + jenkins_slave.slave_relation_removed() |
147 | self.assertFalse(clear_flag.assert_has_calls([mock.call('slave-relation.available')], any_order=True)) |
148 | |
149 | @mock.patch('charms.reactive.clear_flag') |
150 | @@ -270,7 +258,7 @@ class TestSetDefaultConf(unittest.TestCase): |
151 | config, set_flag, clear_flag): |
152 | config.return_value = {'master_url': ''} |
153 | relation_get.return_value = 'http://10.1.1.1:8080' |
154 | - slave_relation() |
155 | + jenkins_slave.slave_relation() |
156 | self.assertFalse(relation_get.assert_called_once_with('url')) |
157 | self.assertFalse(clear_flag.assert_called_once_with('jenkins-slave.active')) |
158 | self.assertFalse(set_flag.assert_called_once_with('slave-relation.configured')) |
159 | @@ -283,7 +271,7 @@ class TestSetDefaultConf(unittest.TestCase): |
160 | config.return_value = {'master_url': '', 'labels': 'label1 label2'} |
161 | relation_get.return_value = 'http://10.1.1.1:8080' |
162 | relation_set.reset_mock() |
163 | - slave_relation() |
164 | + jenkins_slave.slave_relation() |
165 | expected = [mock.call(executors=2), |
166 | mock.call(labels='label1 label2'), |
167 | mock.call(slavehost='mock-jenkins-slave-0'), |
168 | @@ -296,7 +284,7 @@ class TestSetDefaultConf(unittest.TestCase): |
169 | def test_hook_slave_relation_master_url_set(self, set_flag, relation_get, config): |
170 | config.return_value = {'master_url': 'http://10.1.1.1:8080'} |
171 | relation_get.return_value = '' |
172 | - slave_relation() |
173 | + jenkins_slave.slave_relation() |
174 | self.assertFalse(relation_get.assert_not_called()) |
175 | self.assertFalse(set_flag.assert_called_once_with('slave-relation.configured')) |
176 | |
177 | @@ -308,21 +296,21 @@ class TestSetDefaultConf(unittest.TestCase): |
178 | self, relation_get, config, set_flag, clear_flag): |
179 | config.return_value = {'master_url': ''} |
180 | relation_get.return_value = '' |
181 | - slave_relation() |
182 | + jenkins_slave.slave_relation() |
183 | self.assertFalse(clear_flag.assert_not_called()) |
184 | |
185 | def test_write_default_conf_update(self): |
186 | - write_default_conf('http://10.1.1.1:8080', self.user, self.group, self.conf_file) |
187 | + jenkins_slave.write_default_conf('http://10.1.1.1:8080', self.user, self.group, self.conf_file) |
188 | self.assertTrue(conf_match(self.conf_file, 'JENKINS_URL', 'http://10.1.1.1:8080')) |
189 | |
190 | def test_write_default_conf_reset(self): |
191 | - write_default_conf(None, self.user, self.group, self.conf_file) |
192 | + jenkins_slave.write_default_conf(None, self.user, self.group, self.conf_file) |
193 | self.assertTrue(conf_match(self.conf_file, '#JENKINS_URL', '')) |
194 | |
195 | def test_file_to_units_executable_sh(self): |
196 | source = os.path.join(self.charm_dir, 'files/download-slave.sh') |
197 | dest = os.path.join(self.tmpdir, os.path.basename(source)) |
198 | - file_to_units(source, dest, owner=self.user, group=self.group) |
199 | + jenkins_slave.file_to_units(source, dest, owner=self.user, group=self.group) |
200 | with open(dest, 'rb') as fh: |
201 | want = fh.read().decode('utf-8') |
202 | self.assertTrue(conf_equals(source, want)) |
203 | @@ -333,7 +321,7 @@ class TestSetDefaultConf(unittest.TestCase): |
204 | def test_file_to_units_executable_py(self): |
205 | source = os.path.join(self.charm_dir, 'tests/unit/files/somefile.py') |
206 | dest = os.path.join(self.tmpdir, os.path.basename(source)) |
207 | - file_to_units(source, dest, owner=self.user, group=self.group) |
208 | + jenkins_slave.file_to_units(source, dest, owner=self.user, group=self.group) |
209 | with open(dest, 'rb') as fh: |
210 | want = fh.read().decode('utf-8') |
211 | self.assertTrue(conf_equals(source, want)) |
212 | @@ -344,7 +332,7 @@ class TestSetDefaultConf(unittest.TestCase): |
213 | def test_file_to_units_non_executable(self): |
214 | source = os.path.join(self.charm_dir, 'files/jenkins-slave-logrotate-config') |
215 | dest = os.path.join(self.tmpdir, os.path.basename(source)) |
216 | - file_to_units(source, dest, owner=self.user, group=self.group) |
217 | + jenkins_slave.file_to_units(source, dest, owner=self.user, group=self.group) |
218 | with open(dest, 'rb') as fh: |
219 | want = fh.read().decode('utf-8') |
220 | self.assertTrue(conf_equals(dest, want)) |
221 | @@ -355,7 +343,7 @@ class TestSetDefaultConf(unittest.TestCase): |
222 | def test_file_to_units_non_executable_x_on_disk(self): |
223 | source = os.path.join(self.charm_dir, 'tests/unit/files/somefile') |
224 | dest = os.path.join(self.tmpdir, os.path.basename(source)) |
225 | - file_to_units(source, dest, owner=self.user, group=self.group) |
226 | + jenkins_slave.file_to_units(source, dest, owner=self.user, group=self.group) |
227 | with open(dest, 'rb') as fh: |
228 | want = fh.read().decode('utf-8') |
229 | self.assertTrue(conf_equals(source, want)) |
230 | @@ -366,7 +354,7 @@ class TestSetDefaultConf(unittest.TestCase): |
231 | def test_file_to_units_with_perms(self): |
232 | source = os.path.join(self.charm_dir, 'tests/unit/files/somefile') |
233 | dest = os.path.join(self.tmpdir, os.path.basename(source)) |
234 | - file_to_units(source, dest, owner=self.user, group=self.group, perms=0o640) |
235 | + jenkins_slave.file_to_units(source, dest, owner=self.user, group=self.group, perms=0o640) |
236 | with open(dest, 'rb') as fh: |
237 | want = fh.read().decode('utf-8') |
238 | self.assertTrue(conf_equals(source, want)) |
This merge proposal is being monitored by mergebot. Change the status to Approved to merge.