test_integration_azure_security_group.py 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import json
  2. import unittest
  3. import uuid
  4. from cloudbridge.cloud.interfaces import TestMockHelperMixin
  5. from test.helpers import ProviderTestBase
  6. import test.helpers as helpers
  7. class AzureIntegrationSecurityServiceTestCase(ProviderTestBase):
  8. def __init__(self, methodName, provider):
  9. super(AzureIntegrationSecurityServiceTestCase, self).__init__(
  10. methodName=methodName, provider=provider)
  11. @helpers.skipIfNoService(['security.security_groups'])
  12. def test_azure_security_group(self):
  13. sg = self.provider.security.security_groups.create(name="testCreateSecGroup", description="testCreateSecGroup", network_id="")
  14. self.assertEqual("testCreateSecGroup", sg.name)
  15. list = self.provider.security.security_groups.list()
  16. self.assertEqual( len(list) , 2)
  17. get = self.provider.security.security_groups.get("/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96/resourceGroups/cloudbridge-azure/providers/Microsoft.Network/networkSecurityGroups/testCreateSecGroup")
  18. self.assertEqual( get.name , "testCreateSecGroup")
  19. get_notfound = self.provider.security.security_groups.get("testCreateSecGroup1")
  20. self.assertEqual(get_notfound , None)
  21. cb = list.data[0]
  22. rules = cb.rules
  23. cb.add_rule('*', '25', '100', '*')
  24. self.assertEqual(len(rules), 3)
  25. get_rule = cb.get_rule('*', '*', '*', '*')
  26. self.assertEqual(str(get_rule), "<CBSecurityGroupRule: IP: *; from: *; to: *; grp: None>")
  27. get_rule_notfound = cb.get_rule('*', '25', '1', '1')
  28. self.assertEqual(str(get_rule_notfound), 'None')
  29. rule_json = rules[1].to_json()
  30. self.assertEqual(rule_json[2:9], "cidr_ip")
  31. sg_json = cb.to_json()
  32. self.assertEqual(sg_json[2:4], "id")
  33. with self.assertRaises(Exception):
  34. rules[1].delete()
  35. sg_del = self.provider.security.security_groups.delete("/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96/resourceGroups/cloudbridge-azure/providers/Microsoft.Network/networkSecurityGroups/testCreateSecGroup")
  36. self.assertEqual(sg_del, True)
  37. sg_del_notfound = self.provider.security.security_groups.delete("sg5")
  38. self.assertEqual(sg_del_notfound, False)