Add tests and fixtures FCU DescribeQuota API Signed-off-by: Javier M. Mellid <jmun...@igalia.com>
Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/576673d6 Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/576673d6 Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/576673d6 Branch: refs/heads/trunk Commit: 576673d6360fe8bc0191ab6dc2395f6fd5a2a018 Parents: e778636 Author: Javier M. Mellid <jmun...@igalia.com> Authored: Mon Oct 3 15:50:26 2016 +0200 Committer: Anthony Shaw <anthonys...@apache.org> Committed: Fri Oct 7 13:23:41 2016 +1100 ---------------------------------------------------------------------- .../compute/fixtures/fcu/ex_describe_quota.xml | 53 ++++++++++++++++++++ libcloud/test/compute/test_ec2.py | 25 +++++++++ 2 files changed, 78 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/libcloud/blob/576673d6/libcloud/test/compute/fixtures/fcu/ex_describe_quota.xml ---------------------------------------------------------------------- diff --git a/libcloud/test/compute/fixtures/fcu/ex_describe_quota.xml b/libcloud/test/compute/fixtures/fcu/ex_describe_quota.xml new file mode 100644 index 0000000..2948302 --- /dev/null +++ b/libcloud/test/compute/fixtures/fcu/ex_describe_quota.xml @@ -0,0 +1,53 @@ +<DescribeQuotaResponse + xmlns="http://api.outscale.com/wsdl/fcuext/2014-04-15/"> + <requestId>31ef7689-2521-445f-b634-2a5e3e66f699</requestId> + <isTruncated>true</isTruncated> + <referenceQuotaSet> + <item> + <reference>global</reference> + <quotaSet> + <item> + <ownerId>366866344682</ownerId> + <name>vm_limit</name> + <displayName>VM Limit</displayName> + <description>Maximum number of VM this user can own</description> + <groupName>Compute</groupName> + <maxQuotaValue>20</maxQuotaValue> + <usedQuotaValue>1</usedQuotaValue> + </item> + <item> + <ownerId>366866344682</ownerId> + <name>core_limit</name> + <displayName>Core Limit</displayName> + <description>Maximum number of total cores (virtual core)</description> + <groupName>Compute</groupName> + <maxQuotaValue>800</maxQuotaValue> + <usedQuotaValue>2</usedQuotaValue> + </item> + <item> + <ownerId>366866344682</ownerId> + <name>memory_limit</name> + <displayName>Memory Limit</displayName> + <description>Maximum number of total memory (GiB)</description> + <groupName>Compute</groupName> + <maxQuotaValue>4880</maxQuotaValue> + <usedQuotaValue>7</usedQuotaValue> + </item> + </quotaSet> + </item> + <item> + <reference>vpc-00000000</reference> + <quotaSet> + <item> + <ownerId>366866344682</ownerId> + <name>sg_limit</name> + <displayName>Security Groups Limit</displayName> + <description>Maximum number of security groups</description> + <groupName>Security Groups</groupName> + <maxQuotaValue>100</maxQuotaValue> + <usedQuotaValue>2</usedQuotaValue> + </item> + </quotaSet> + </item> + </referenceQuotaSet> +</DescribeQuotaResponse> http://git-wip-us.apache.org/repos/asf/libcloud/blob/576673d6/libcloud/test/compute/test_ec2.py ---------------------------------------------------------------------- diff --git a/libcloud/test/compute/test_ec2.py b/libcloud/test/compute/test_ec2.py index 2b24776..5d919fa 100644 --- a/libcloud/test/compute/test_ec2.py +++ b/libcloud/test/compute/test_ec2.py @@ -1795,5 +1795,30 @@ class OutscaleTests(EC2Tests): self.assertTrue('m1.xlarge' in ids) +class FCUMockHttp(EC2MockHttp): + fixtures = ComputeFileFixtures('fcu') + + def _DescribeQuota(self, method, url, body, headers): + body = self.fixtures.load('ex_describe_quota.xml') + return (httplib.OK, body, {}, httplib.responses[httplib.OK]) + + +class OutscaleFCUTests(LibcloudTestCase): + + def setUp(self): + OutscaleSASNodeDriver.connectionCls.conn_classes = (None, FCUMockHttp) + EC2MockHttp.use_param = 'Action' + EC2MockHttp.type = None + self.driver = OutscaleSASNodeDriver(key=EC2_PARAMS[0], + secret=EC2_PARAMS[1], + host='some.fcucloud.com') + + def test_ex_describe_quota(self): + is_truncated, quota = self.driver.ex_describe_quota() + self.assertTrue(is_truncated == 'true') + self.assertTrue('global' in quota.keys()) + self.assertTrue('vpc-00000000' in quota.keys()) + + if __name__ == '__main__': sys.exit(unittest.main())