test_region_service.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. from cloudbridge.cloud.interfaces import Region
  2. from test.helpers import ProviderTestBase
  3. class CloudRegionServiceTestCase(ProviderTestBase):
  4. def __init__(self, methodName, provider):
  5. super(CloudRegionServiceTestCase, self).__init__(
  6. methodName=methodName, provider=provider)
  7. def test_get_and_list_regions(self):
  8. """
  9. Test whether the region listing methods work,
  10. and whether zones are returned appropriately.
  11. """
  12. regions = self.provider.compute.regions.list()
  13. # check iteration
  14. iter_regions = list(self.provider.compute.regions)
  15. self.assertListEqual(iter_regions, regions)
  16. for region in regions:
  17. self.assertIsInstance(
  18. region,
  19. Region,
  20. "regions.list() should return a cloudbridge Region")
  21. self.assertTrue(
  22. region.name,
  23. "Region name should be a non-empty string")
  24. region = self.provider.compute.regions.get(regions[0].id)
  25. self.assertEqual(
  26. region,
  27. regions[0],
  28. "List and get methods should return the same regions")
  29. self.assertTrue(
  30. region.id in repr(region),
  31. "repr(obj) should contain the object id so that the object"
  32. " can be reconstructed, but does not.")