|
179 | 179 | "enabled": {
|
180 | 180 | "expected": {
|
181 | 181 | "runtime": [call("default", "eth2")],
|
182 |
| - "permanent": [call("eth2")], |
183 | 182 | }
|
184 | 183 | },
|
185 | 184 | "disabled": {
|
@@ -263,6 +262,64 @@ def __call__(self, **kwargs):
|
263 | 262 | return am
|
264 | 263 |
|
265 | 264 |
|
| 265 | +class FirewallInterfaceTests(unittest.TestCase): |
| 266 | + """class to test Firewall interface tests""" |
| 267 | + |
| 268 | + @patch("firewall_lib.FirewallClientZoneSettings", create=True) |
| 269 | + @patch("firewall_lib.FirewallClient", create=True) |
| 270 | + @patch("firewall_lib.HAS_FIREWALLD", True) |
| 271 | + @patch("firewall_lib.FW_VERSION", "0.3.8", create=True) |
| 272 | + def test_handle_interface_offline_true(self, zone_settings, firewall_class): |
| 273 | + module = Mock() |
| 274 | + zone = "dmz" |
| 275 | + item = "eth2" |
| 276 | + fw = firewall_class.return_value |
| 277 | + fw_config = Mock() |
| 278 | + fw.config.return_value = fw_config |
| 279 | + fw_zone = Mock() |
| 280 | + fw.config.getZoneByName.return_value = fw_zone |
| 281 | + fw_settings = Mock() |
| 282 | + fw.config.getZoneByName.getSettings.return_value = fw_settings |
| 283 | + fw_offline = True |
| 284 | + fw.config.get_zones.return_value = ["dmz"] |
| 285 | + fw_zone_two = Mock() |
| 286 | + fw.config.get_zone.return_value = fw_zone_two |
| 287 | + fw_zone_two.interfaces = ["eth2"] |
| 288 | + |
| 289 | + firewall_lib.handle_interface_permanent( |
| 290 | + zone, item, fw_zone, fw_settings, fw, fw_offline, module |
| 291 | + ) |
| 292 | + called_mock = getattr(fw_settings, "addInterface") |
| 293 | + assert [call("eth2")] == called_mock.call_args_list |
| 294 | + |
| 295 | + @patch("firewall_lib.FirewallClientZoneSettings", create=True) |
| 296 | + @patch("firewall_lib.FirewallClient", create=True) |
| 297 | + @patch("firewall_lib.HAS_FIREWALLD", True) |
| 298 | + @patch("firewall_lib.FW_VERSION", "0.3.8", create=True) |
| 299 | + def test_handle_interface_offline_false(self, zone_settings, firewall_class): |
| 300 | + module = Mock() |
| 301 | + zone = "dmz" |
| 302 | + item = "eth2" |
| 303 | + fw = firewall_class.return_value |
| 304 | + fw_config = Mock() |
| 305 | + fw.config.return_value = fw_config |
| 306 | + fw_zone = Mock() |
| 307 | + fw.config.getZoneByName.return_value = fw_zone |
| 308 | + fw_settings = Mock() |
| 309 | + fw.config.getZoneByName.getSettings.return_value = fw_settings |
| 310 | + fw_offline = False |
| 311 | + fw.config.get_zones.return_value = ["dmz"] |
| 312 | + fw_zone_two = Mock() |
| 313 | + fw.config.get_zone.return_value = fw_zone_two |
| 314 | + fw_zone_two.interfaces = ["eth2"] |
| 315 | + |
| 316 | + firewall_lib.handle_interface_permanent( |
| 317 | + zone, item, fw_zone, fw_settings, fw, fw_offline, module |
| 318 | + ) |
| 319 | + called_mock = getattr(fw_settings, "addInterface") |
| 320 | + assert [call("eth2")] == called_mock.call_args_list |
| 321 | + |
| 322 | + |
266 | 323 | class FirewallLibParsers(unittest.TestCase):
|
267 | 324 | """test param to profile conversion and vice versa"""
|
268 | 325 |
|
|
0 commit comments