test_azure_volume_service.py 4.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. import azure_test.helpers as helpers
  2. from azure_test.helpers import ProviderTestBase
  3. class AzureVolumeServiceTestCase(ProviderTestBase):
  4. @helpers.skipIfNoService(['block_store.volumes'])
  5. def test_azure_volume_create_and_get(self):
  6. volume = self.provider.block_store.volumes.create(
  7. "MyVolume", 1, description='My volume')
  8. print("Create Volume - " + str(volume))
  9. self.assertTrue(
  10. volume.name == "MyVolume", "Volume name should be MyVolume")
  11. volume = self.provider.block_store.volumes.get(
  12. "/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96/resourceGroups/cloudbridge-azure/providers'\
  13. '/Microsoft.Compute/disks/MyVolume")
  14. print("Get Volume - " + str(volume))
  15. self.assertTrue(
  16. volume.name == "MyVolume", "Volume name should be MyVolume")
  17. volume.delete()
  18. @helpers.skipIfNoService(['block_store.volumes'])
  19. def test_azure_volume_delete(self):
  20. volume = self.provider.block_store.volumes.create("MyVolume", 1)
  21. volume.refresh()
  22. print("Create Volume - " + str(volume))
  23. self.assertTrue(volume.name == "MyVolume",
  24. "Volume name should be MyVolume")
  25. volume.delete()
  26. volume1_id = "/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96" \
  27. "/resourceGroups/cloudbridge-azure/providers" \
  28. "/Microsoft.Compute/disks/MyVolume"
  29. volume1 = self.provider.block_store.volumes.get(volume1_id)
  30. self.assertTrue(
  31. volume1 is None, "Volume still exists")
  32. @helpers.skipIfNoService(['block_store.volumes'])
  33. def test_azure_volume_attach(self):
  34. volume = self.provider.block_store.volumes.create(
  35. "MyVolume", 1, description='My volume')
  36. self.assertTrue(
  37. volume.name == "MyVolume", "Volume name should be MyVolume")
  38. volume.attach("/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96"
  39. "/resourceGroups/CloudBridge-Azure/providers"
  40. "/Microsoft.Compute/virtualMachines/ubuntu-intro1")
  41. volume.delete()
  42. @helpers.skipIfNoService(['block_store.volumes'])
  43. def test_azure_volume_dettach(self):
  44. volume = self.provider.block_store.volumes.create(
  45. "MyVolume", 1, description='My volume')
  46. self.assertTrue(
  47. volume.name == "MyVolume", "Volume name should be MyVolume")
  48. volume.detach()
  49. volume.delete()
  50. @helpers.skipIfNoService(['block_store.volumes'])
  51. def test_azure_volume_create_snapshot(self):
  52. volume = self.provider.block_store.volumes.create(
  53. "MyVolume", 1, description='My volume')
  54. self.assertTrue(
  55. volume.name == "MyVolume", "Volume name should be MyVolume")
  56. with self.assertRaises(NotImplementedError):
  57. snapshot = volume.create_snapshot("MySnap")
  58. self.assertTrue(
  59. snapshot is not None, "Snapshot not created")
  60. volume.delete()
  61. @helpers.skipIfNoService(['block_store.volumes'])
  62. def test_azure_volume_get_ifNotExist(self):
  63. volume_id = "/subscriptions/7904d702-e01c-4826-8519-f5a25c866a96" \
  64. "/resourceGroups/cloudbridge-azure/providers" \
  65. "/Microsoft.Compute/disks/MyVolume123"
  66. volume = self.provider.block_store.volumes.get(volume_id)
  67. self.assertTrue(
  68. volume is None, "Volume should not be available")
  69. @helpers.skipIfNoService(['block_store.volumes'])
  70. def test_azure_volume_find(self):
  71. volumes = self.provider.block_store.volumes.find("Volume")
  72. self.assertTrue(
  73. len(volumes) == 2, "Volume should not be available")
  74. @helpers.skipIfNoService(['block_store.volumes'])
  75. def test_azure_volume_find_ifNotExist(self):
  76. volumes = self.provider.block_store.volumes.find("Volume123")
  77. self.assertTrue(
  78. len(volumes) == 0, "Volume should not be available")
  79. @helpers.skipIfNoService(['block_store.volumes'])
  80. def test_azure_volume_list(self):
  81. volume_list = self.provider.block_store.volumes.list()
  82. print("Volume List - " + str(volume_list))
  83. self.assertEqual(
  84. len(volume_list), 2)