|
@@ -0,0 +1,44 @@
|
|
|
|
|
+import itertools
|
|
|
|
|
+
|
|
|
|
|
+from cloudbridge.cloud import helpers as cbhelpers
|
|
|
|
|
+from test.helpers import ProviderTestBase
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+class CloudHelpersTestCase(ProviderTestBase):
|
|
|
|
|
+
|
|
|
|
|
+ def __init__(self, methodName, provider):
|
|
|
|
|
+ super(CloudHelpersTestCase, self).__init__(
|
|
|
|
|
+ methodName=methodName, provider=provider)
|
|
|
|
|
+
|
|
|
|
|
+ def test_result_list_conversion(self):
|
|
|
|
|
+
|
|
|
|
|
+ class DummyResult(object):
|
|
|
|
|
+
|
|
|
|
|
+ def __init__(self, objid, name):
|
|
|
|
|
+ self.id = objid
|
|
|
|
|
+ self.name = name
|
|
|
|
|
+
|
|
|
|
|
+ def __repr__(self):
|
|
|
|
|
+ return "%s (%s)" % (self.id, self.name)
|
|
|
|
|
+
|
|
|
|
|
+ objects = [DummyResult(1, "One"),
|
|
|
|
|
+ DummyResult(2, "Two"),
|
|
|
|
|
+ DummyResult(3, "Three"),
|
|
|
|
|
+ DummyResult(4, "Four"),
|
|
|
|
|
+ ]
|
|
|
|
|
+
|
|
|
|
|
+ results = cbhelpers.to_result_list(self.provider, objects, 2, None)
|
|
|
|
|
+ self.assertListEqual(results, list(itertools.islice(objects, 2)))
|
|
|
|
|
+ self.assertEqual(results.marker, objects[1].id)
|
|
|
|
|
+ self.assertTrue(results.supports_total)
|
|
|
|
|
+ self.assertEqual(results.total_results, 4)
|
|
|
|
|
+
|
|
|
|
|
+ results = cbhelpers.to_result_list(self.provider, objects, 2, 2)
|
|
|
|
|
+ self.assertListEqual(results, list(itertools.islice(objects, 2, 4)))
|
|
|
|
|
+ self.assertEqual(results.marker, None)
|
|
|
|
|
+ self.assertTrue(results.supports_total)
|
|
|
|
|
+ self.assertEqual(results.total_results, 4)
|
|
|
|
|
+
|
|
|
|
|
+ results = cbhelpers.to_result_list(self.provider, objects, 2, 3)
|
|
|
|
|
+ self.assertListEqual(results, list(itertools.islice(objects, 3, 4)))
|
|
|
|
|
+ self.assertEqual(results.marker, None)
|