def test_update_project_limits(self): tenant = doubles.make(self.mox, doubles.Tenant, id=self.tenant_id, name='old name', description='old description') gb = 1024 * 1024 * 1024 params = { u'cpus-limit': 13, u'ram-limit': 11 * gb, u'instances-limit': 8 } self.fake_client_set.identity_admin \ .tenants.get(self.tenant_id).AndReturn(tenant) self.fake_client_set.compute.quotas.update(self.tenant_id, instances=8, ram=11 * 1024, cores=13) projects._network_for_project(self.tenant_id).AndReturn('NET') projects._quotaset_for_project(self.tenant_id).AndReturn('QUOTA') projects._project_to_view(tenant, 'NET', 'QUOTA')\ .AndReturn('UPDATED') self.mox.ReplayAll() data = self.interact(params) self.assertEquals(data, 'UPDATED')
def test_get_project(self): tenant = doubles.make(self.mox, doubles.Tenant, name=u'name', id=u'pid') self.tm_mock.find(id=u'pid').AndReturn(tenant) projects._quotaset_for_project(u'pid').AndReturn('QUOTA') projects._network_for_project(u'pid').AndReturn('FAKE_NETWORK') projects._project_to_view(tenant, 'FAKE_NETWORK', 'QUOTA') \ .AndReturn('FAKE_PROJECT') self.mox.ReplayAll() rv = self.client.get('/v1/projects/pid') data = self.check_and_parse_response(rv) self.assertEquals(data, 'FAKE_PROJECT')
def test_no_network_for_project(self): self.fake_client_set.compute.networks.list().AndReturn([]) self.mox.ReplayAll() with self.app.test_request_context(): self.install_fake_auth() result = projects._network_for_project(u'pid2') self.assertEquals(result, None)
def test_update_project_updates(self): tenant = doubles.make(self.mox, doubles.Tenant, id=self.tenant_id, name='old name', description='old description') updated = doubles.make(self.mox, doubles.Tenant, id=self.tenant_id, name='old name', description='new description') self.fake_client_set.identity_admin \ .tenants.get(self.tenant_id).AndReturn(tenant) tenant.update(description=updated.description).AndReturn(updated) projects._network_for_project(self.tenant_id).AndReturn('NET') projects._quotaset_for_project(self.tenant_id).AndReturn('QUOTA') projects._project_to_view(updated, 'NET', 'QUOTA')\ .AndReturn('UPDATED') self.mox.ReplayAll() data = self.interact({'description': updated.description}) self.assertEquals(data, 'UPDATED')
def test_network_for_project(self): def net(**kwargs): return doubles.make(self.mox, doubles.Network, **kwargs) nets = (net(label=u'net1', id=u'netid1', project_id=u'pid1'), net(label=u'net2', id=u'netid2', project_id=u'pid2'), net(label=u'net3', id=u'netid3', project_id=u'pid3')) self.fake_client_set.compute.networks.list().AndReturn(nets) self.mox.ReplayAll() with self.app.test_request_context(): self.install_fake_auth() result = projects._network_for_project(u'pid2') self.assertEquals(result, nets[1])