test_azure_network_service.py 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. import azure_test.helpers as helpers
  2. from azure_test.helpers import ProviderTestBase
  3. class AzureNetworkServiceTestCase(ProviderTestBase):
  4. @helpers.skipIfNoService(['network'])
  5. def test_azure_network_service_list(self):
  6. networks = self.provider.network.list()
  7. for network in networks:
  8. print("List( " + "Name: " + network.name + ", Id: " +
  9. str(network.id) + ", State: " + network.state +
  10. ", Cidr_Block: " + str(network.cidr_block) + " )")
  11. self.assertTrue(len(networks) == 2, "Count should be 2")
  12. @helpers.skipIfNoService(['network'])
  13. def test_azure_network_service_list_check_values(self):
  14. networks = self.provider.network.list()
  15. for network in networks:
  16. print("List( " + "Name: " + network.name + ", Id: " +
  17. str(network.id) + ", State: " + network.state +
  18. ", Cidr_Block: " + str(network.cidr_block) + " )")
  19. self.assertTrue(len(networks) == 2, "Count should be 2")
  20. self.assertEqual(networks[0].id,
  21. '/subscriptions'
  22. '/7904d702-e01c-4826-8519-f5a25c866a96'
  23. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  24. '/Microsoft.Network/virtualNetworks/CloudBridgeNet1')
  25. self.assertEqual(networks[0].name, "CloudBridgeNet1")
  26. self.assertEqual(networks[0].cidr_block,
  27. '10.0.0.0/16')
  28. self.assertEqual(networks[0].state, "available")
  29. self.assertEqual(networks[1].id,
  30. '/subscriptions'
  31. '/7904d702-e01c-4826-8519-f5a25c866a96'
  32. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  33. '/Microsoft.Network/virtualNetworks/CloudBridgeNet2')
  34. self.assertEqual(networks[1].name, "CloudBridgeNet2")
  35. self.assertEqual(networks[1].cidr_block,
  36. '10.0.0.0/16')
  37. self.assertEqual(networks[1].state, "unknown")
  38. @helpers.skipIfNoService(['network'])
  39. def test_azure_network_service_get_exist(self):
  40. network = self.provider.network \
  41. .get('/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96'
  42. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  43. '/Microsoft.Network/virtualNetworks/CloudBridgeNet1')
  44. print("get exist: " + str(network))
  45. self.assertEqual(network.id,
  46. '/subscriptions'
  47. '/7904d702-e01c-4826-8519-f5a25c866a96'
  48. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  49. '/Microsoft.Network/virtualNetworks/CloudBridgeNet1')
  50. self.assertEqual(network.name, "CloudBridgeNet1")
  51. self.assertEqual(network.cidr_block,
  52. '10.0.0.0/16')
  53. self.assertEqual(network.state, "available")
  54. @helpers.skipIfNoService(['network'])
  55. def test_azure_network_service_get_doesnt_exist(self):
  56. network = self.provider.network \
  57. .get('/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96'
  58. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  59. '/Microsoft.Network/virtualNetworks/CloudBridgeNet10')
  60. print("get does not exist: " + str(network))
  61. self.assertEqual(
  62. str(network), 'None')
  63. @helpers.skipIfNoService(['network'])
  64. def test_azure_network_service_get_with_invaid_networkid_throws(self):
  65. with self.assertRaises(Exception) as context:
  66. network = self.provider.network \
  67. .get('invalidNetworkId')
  68. print("Get with invalid network id: " + str(network))
  69. self.assertTrue(
  70. 'Invalid url parameter passed' in context.exception)
  71. @helpers.skipIfNoService(['network'])
  72. def test_azure_network_service_create(self):
  73. network = self.provider.network.create("CloudBridgeNet1")
  74. network.refresh()
  75. print("create: " + str(network))
  76. self.assertIsNotNone(network.id)
  77. self.assertEqual(network.name, "CloudBridgeNet1")
  78. self.assertEqual(network.cidr_block,
  79. '10.0.0.0/16')
  80. self.assertEqual(network.state, "available")
  81. self.assertTrue(network.external)
  82. network.name = 'newname'
  83. self.assertEqual(network.name, 'newname')
  84. deleted = network.delete()
  85. self.assertTrue(deleted)
  86. deleted = network.delete()
  87. self.assertFalse(deleted)
  88. network.refresh()
  89. @helpers.skipIfNoService(['network'])
  90. def test_azure_network_service_delete_networkid_exists(self):
  91. isdeleted = self.provider.network.delete(
  92. '/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96'
  93. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  94. '/Microsoft.Network/virtualNetworks/CloudBridgeNet3')
  95. print("Delete Network Id exist: " + str(isdeleted))
  96. self.assertEqual(isdeleted, True)
  97. # Calling get network to make sure network was actually deleted
  98. network = self.provider.network \
  99. .get('/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96'
  100. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  101. '/Microsoft.Network/virtualNetworks/CloudBridgeNet3')
  102. print("get does not exist: " + str(network))
  103. self.assertEqual(
  104. str(network), 'None')
  105. @helpers.skipIfNoService(['network'])
  106. def test_azure_network_service_delete_networkid_does_not_exist(self):
  107. isdeleted = self.provider.network.delete(
  108. '/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96'
  109. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  110. '/Microsoft.Network/virtualNetworks/CloudBridgeNet10')
  111. print("Delete Network Id does not exist: " + str(isdeleted))
  112. self.assertEqual(isdeleted, False)
  113. @helpers.skipIfNoService(['network'])
  114. def test_azure_network_service_delete_with_invaid_networkid_throws(self):
  115. with self.assertRaises(Exception) as context:
  116. isdeleted = self.provider.network \
  117. .delete('invalidNetworkId')
  118. print("Delete with invalid network id: " + str(isdeleted))
  119. self.assertTrue(
  120. 'Invalid url parameter passed' in context.exception)
  121. @helpers.skipIfNoService(['network'])
  122. def test_network_methods(self):
  123. with self.assertRaises(NotImplementedError):
  124. floating_ips = self.provider.network.floating_ips()
  125. self.assertIsNotNone(floating_ips)
  126. with self.assertRaises(NotImplementedError):
  127. floating_ip = self.provider.network.create_floating_ip()
  128. self.assertIsNotNone(floating_ip)
  129. with self.assertRaises(NotImplementedError):
  130. routers = self.provider.network.routers()
  131. self.assertIsNotNone(routers)
  132. with self.assertRaises(NotImplementedError):
  133. router = self.provider.network.create_router()
  134. self.assertIsNotNone(router)
  135. def test_network_create_and_list_subnet(self):
  136. network = self.provider.network \
  137. .get('/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96'
  138. '/resourceGroups/CLOUDBRIDGE-AZURE/providers'
  139. '/Microsoft.Network/virtualNetworks/CloudBridgeNet1')
  140. subnet = network.create_subnet('10.0.0.0/24')
  141. self.assertIsNotNone(subnet)
  142. subnets = network.subnets()
  143. self.assertTrue(len(subnets) > 0)
  144. subnet.delete()