test_cloud_helpers.py 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import itertools
  2. from cloudbridge.cloud import helpers as cbhelpers
  3. from test.helpers import ProviderTestBase
  4. class CloudHelpersTestCase(ProviderTestBase):
  5. def __init__(self, methodName, provider):
  6. super(CloudHelpersTestCase, self).__init__(
  7. methodName=methodName, provider=provider)
  8. def test_result_list_conversion(self):
  9. class DummyResult(object):
  10. def __init__(self, objid, name):
  11. self.id = objid
  12. self.name = name
  13. def __repr__(self):
  14. return "%s (%s)" % (self.id, self.name)
  15. objects = [DummyResult(1, "One"),
  16. DummyResult(2, "Two"),
  17. DummyResult(3, "Three"),
  18. DummyResult(4, "Four"),
  19. ]
  20. results = cbhelpers.to_result_list(self.provider, objects, 2, None)
  21. self.assertListEqual(results, list(itertools.islice(objects, 2)))
  22. self.assertEqual(results.marker, objects[1].id)
  23. self.assertTrue(results.supports_total)
  24. self.assertEqual(results.total_results, 4)
  25. results = cbhelpers.to_result_list(self.provider, objects, 2, 2)
  26. self.assertListEqual(results, list(itertools.islice(objects, 2, 4)))
  27. self.assertEqual(results.marker, None)
  28. self.assertTrue(results.supports_total)
  29. self.assertEqual(results.total_results, 4)
  30. results = cbhelpers.to_result_list(self.provider, objects, 2, 3)
  31. self.assertListEqual(results, list(itertools.islice(objects, 3, 4)))
  32. self.assertEqual(results.marker, None)