def test_update_firewall_post(self): firewall_group = self.firewall_groups_v2.first() tenant_id = self.tenant.id api_fwaas_v2.firewall_get(IsA(http.HttpRequest), firewall_group.id).AndReturn(firewall_group) data = { 'name': 'new name', 'description': 'new desc', 'ingress_firewall_policy_id': firewall_group.ingress_firewall_policy_id, 'admin_state_up': False } policies = self.fw_policies_v2.list() api_fwaas_v2.policy_list_for_tenant(IsA(http.HttpRequest), tenant_id).AndReturn(policies) api_fwaas_v2.firewall_update( IsA(http.HttpRequest), firewall_group.id, **data)\ .AndReturn(firewall_group) self.mox.ReplayAll() res = self.client.post( reverse(self.UPDATEFIREWALLGROUP_PATH, args=(firewall_group.id, )), data) self.assertNoFormErrors(res) self.assertRedirectsNoFollow(res, str(self.INDEX_URL))
def test_firewall_get(self): exp_firewall = self.firewall_groups_v2.first() ret_dict = {'firewall_group': self.api_firewall_groups_v2.first()} ingress_policy_id = exp_firewall.ingress_firewall_policy_id ingress_policy = [ p for p in self.api_fw_policies_v2.list() if p['id'] == ingress_policy_id ][0] egress_policy_id = exp_firewall.egress_firewall_policy_id egress_policy = [ p for p in self.api_fw_policies_v2.list() if p['id'] == egress_policy_id ][0] self.mock_show_fwaas_firewall_group.return_value = ret_dict self.mock_show_fwaas_firewall_policy.side_effect = [{ 'firewall_policy': ingress_policy }, { 'firewall_policy': egress_policy }] ret_val = api_fwaas_v2.firewall_get(self.request, exp_firewall.id) self._assert_firewall_return_value(ret_val, exp_firewall) self.mock_show_fwaas_firewall_group.assert_called_once_with( exp_firewall.id) self.assertEqual(2, self.mock_show_fwaas_firewall_policy.call_count) self.mock_show_fwaas_firewall_policy.assert_has_calls([ mock.call(ingress_policy_id), mock.call(egress_policy_id), ])
def test_firewall_get(self): exp_firewall = self.firewall_groups_v2.first() ret_dict = {'firewall_group': self.api_firewall_groups_v2.first()} ingress_policy_id = exp_firewall.ingress_firewall_policy_id ingress_policy = [ p for p in self.api_fw_policies_v2.list() if p['id'] == ingress_policy_id ][0] egress_policy_id = exp_firewall.egress_firewall_policy_id egress_policy = [ p for p in self.api_fw_policies_v2.list() if p['id'] == egress_policy_id ][0] neutronclient.show_fwaas_firewall_group( exp_firewall.id).AndReturn(ret_dict) neutronclient.show_fwaas_firewall_policy(ingress_policy_id)\ .AndReturn({'firewall_policy': ingress_policy}) neutronclient.show_fwaas_firewall_policy(egress_policy_id)\ .AndReturn({'firewall_policy': egress_policy}) self.mox.ReplayAll() ret_val = api_fwaas_v2.firewall_get(self.request, exp_firewall.id) self._assert_firewall_return_value(ret_val, exp_firewall)
def _get_object(self, *args, **kwargs): firewall_id = self.kwargs['firewall_id'] try: firewall = api_fwaas_v2.firewall_get(self.request, firewall_id) return firewall except Exception: redirect = self.success_url msg = _('Unable to retrieve firewall details.') exceptions.handle(self.request, msg, redirect=redirect)
def test_update_firewall_group_get(self): firewall_group = self.firewall_groups_v2.first() policies = self.fw_policies_v2.list() tenant_id = self.tenant.id api_fwaas_v2.policy_list_for_tenant(IsA(http.HttpRequest), tenant_id).AndReturn(policies) api_fwaas_v2.firewall_get(IsA(http.HttpRequest), firewall_group.id).AndReturn(firewall_group) self.mox.ReplayAll() res = self.client.get( reverse(self.UPDATEFIREWALLGROUP_PATH, args=(firewall_group.id, ))) self.assertTemplateUsed(res, 'project/firewalls_v2/updatefirewall.html')
def get_data(self): try: firewallgroup_id = self.kwargs['firewallgroup_id'] firewall_group = api_fwaas_v2.firewall_get(self.request, firewallgroup_id) except Exception: exceptions.handle(self.request, _('Unable to retrieve firewall details.'), redirect=self.failure_url) return firewall_group