test_integration_azure_security_group.py 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. import uuid
  2. import azure_integration_test.helpers as helpers
  3. from azure_integration_test.helpers import ProviderTestBase
  4. class AzureIntegrationSecurityServiceTestCase(ProviderTestBase):
  5. @helpers.skipIfNoService(['security.security_groups'])
  6. def test_azure_security_group(self):
  7. sg_name = '{0}'.format(uuid.uuid4())
  8. print("SG guid - " + sg_name)
  9. listBeforeCreate = self.provider.security.security_groups.list()
  10. print("Length Before create - " + str(len(listBeforeCreate)))
  11. # netId = "/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96
  12. # /resourceGroups/CloudBridge-Azure'\
  13. # '/providers/Microsoft.Network/virtualNetworks/SampleNetwork"
  14. sg = self.provider.security.security_groups.create(
  15. name=sg_name, description="testCreateSecGroup", network_id='')
  16. self.assertEqual(sg_name, sg.name)
  17. print(str(sg))
  18. listAfterCreate = self.provider.security.security_groups.list()
  19. print("Length After create - " + str(len(listAfterCreate)))
  20. self.assertEqual(len(listAfterCreate), len(listBeforeCreate) + 1)
  21. get = self.provider.security.security_groups.get(
  22. "/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96/resourceGroups/CloudBridge-Azure/providers'\
  23. '/Microsoft.Network/networkSecurityGroups/" + sg_name)
  24. print("Get SG - " + str(get))
  25. print(str(get.rules))
  26. self.assertEqual(get.name, sg_name)
  27. get_notfound = self.provider.security.security_groups.get(
  28. "/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96"
  29. "/resourceGroups/cloudbridge-azure/providers/Microsoft.Network"
  30. "/networkSecurityGroups/SecgrupDontFindMe")
  31. self.assertEqual(get_notfound, None)
  32. find_exists_list = self.provider.security.security_groups.find(sg_name)
  33. for sg in find_exists_list:
  34. self.assertTrue(sg_name in sg.name)
  35. print("Find - " + str(find_exists_list))
  36. print("Find Total Results- " + str(find_exists_list.total_results))
  37. self.assertTrue(find_exists_list.total_results > 0)
  38. find_not_exists_list = self.provider.security.security_groups. \
  39. find('dontfindme')
  40. self.assertTrue(find_not_exists_list.total_results == 0)
  41. lenBeforeCreateRule = len(sg.rules)
  42. sg.add_rule('tcp', '1111', '2222', '0.0.0.0/0')
  43. lenAfterCreateRule = len(sg.rules)
  44. print("Length before create rule - " + str(lenBeforeCreateRule))
  45. print("Length after create rule - " + str(lenAfterCreateRule))
  46. self.assertEqual(lenAfterCreateRule, lenBeforeCreateRule + 1)
  47. print("create second rule ")
  48. sg.add_rule('tcp', '1111', '2222', '0.0.0.0/0')
  49. print("Length before second create rule - " + str(lenBeforeCreateRule))
  50. print("Length after second create rule - " + str(lenAfterCreateRule))
  51. print(str(sg.rules))
  52. get_rule = sg.get_rule('tcp', '1111', '2222', '0.0.0.0/0')
  53. print("Get Rule - " + str(get_rule))
  54. self.assertIsNotNone(get_rule)
  55. get_rule_notfound = sg.get_rule('*', '25', '1', '1')
  56. self.assertEqual(str(get_rule_notfound), 'None')
  57. rule_json = sg.rules[0].to_json()
  58. print("Rule json - " + str(rule_json))
  59. self.assertIsNotNone(rule_json)
  60. sg_json = sg.to_json()
  61. print("SG json - " + str(sg_json))
  62. self.assertIsNotNone(sg_json)
  63. listBeforeDeleteFound = self.provider.security.security_groups.list()
  64. sg_id = "/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96" \
  65. "/resourceGroups/cloudbridge-azure/providers" \
  66. "/Microsoft.Network/networkSecurityGroups/" + sg_name
  67. self.provider.security.security_groups.delete(sg_id)
  68. listAfterDeleteFound = self.provider.security.security_groups.list()
  69. print("Length before delete - " + str(len(listBeforeDeleteFound)))
  70. print("Length after delete - " + str(len(listAfterDeleteFound)))
  71. self.assertEqual(
  72. len(listAfterDeleteFound), len(listBeforeDeleteFound) - 1)
  73. sg_id = "/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96" \
  74. "/resourceGroups/cloudbridge-azure/providers" \
  75. "/Microsoft.Network/networkSecurityGroups/sg5"
  76. self.provider.security.security_groups.delete(sg_id)
  77. listAfterDeleteNotFound = self.provider.security.security_groups.list()
  78. self.assertEqual(
  79. len(listAfterDeleteNotFound), len(listAfterDeleteFound))