tuskar-ui/tuskar_ui/test/api_tests/tuskar_tests.py
Lennart Regebro f4126ab431 Moving back to using python-tuskarclient instead of mocking it
Change-Id: I06afd8c98e26b1fb0278622e54bf4ae03755ae9e
2014-08-25 13:44:57 +02:00

112 lines
4.2 KiB
Python

#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from __future__ import absolute_import
from mock import patch # noqa
from tuskar_ui import api
from tuskar_ui.test import helpers as test
class TuskarAPITests(test.APITestCase):
def test_plan_create(self):
plan = self.tuskarclient_plans.first()
with patch('tuskarclient.v2.plans.PlanManager.create',
return_value=plan):
ret_val = api.tuskar.OvercloudPlan.create(self.request, {}, {})
self.assertIsInstance(ret_val, api.tuskar.OvercloudPlan)
def test_plan_list(self):
plans = self.tuskarclient_plans.list()
with patch('tuskarclient.v2.plans.PlanManager.list',
return_value=plans):
ret_val = api.tuskar.OvercloudPlan.list(self.request)
for plan in ret_val:
self.assertIsInstance(plan, api.tuskar.OvercloudPlan)
self.assertEqual(1, len(ret_val))
def test_plan_get(self):
plan = self.tuskarclient_plans.first()
with patch('tuskarclient.v2.plans.PlanManager.get',
return_value=plan):
ret_val = api.tuskar.OvercloudPlan.get(self.request, plan.id)
self.assertIsInstance(ret_val, api.tuskar.OvercloudPlan)
def test_plan_get_the_plan(self):
plan = self.tuskarclient_plans.first()
with patch('tuskarclient.v2.plans.PlanManager.list',
return_value=[plan]):
with patch('tuskarclient.v2.plans.PlanManager.create',
return_value=plan):
ret_val = api.tuskar.OvercloudPlan.get_the_plan(self.request)
self.assertIsInstance(ret_val, api.tuskar.OvercloudPlan)
def test_plan_delete(self):
plan = self.tuskarclient_plans.first()
with patch('tuskarclient.v2.plans.PlanManager.delete',
return_value=None):
api.tuskar.OvercloudPlan.delete(self.request, plan.id)
def test_plan_role_list(self):
with patch('tuskarclient.v2.plans.PlanManager.get',
return_value=[]):
plan = api.tuskar.OvercloudPlan(self.tuskarclient_plans.first(),
self.request)
with patch('tuskarclient.v2.roles.RoleManager.list',
return_value=self.tuskarclient_roles.list()):
ret_val = plan.role_list
self.assertEqual(4, len(ret_val))
for r in ret_val:
self.assertIsInstance(r, api.tuskar.OvercloudRole)
def test_role_list(self):
roles = self.tuskarclient_roles.list()
with patch('tuskarclient.v2.roles.RoleManager.list',
return_value=roles):
ret_val = api.tuskar.OvercloudRole.list(self.request)
for r in ret_val:
self.assertIsInstance(r, api.tuskar.OvercloudRole)
self.assertEqual(4, len(ret_val))
def test_role_get(self):
roles = self.tuskarclient_roles.list()
with patch('tuskarclient.v2.roles.RoleManager.list',
return_value=roles):
ret_val = api.tuskar.OvercloudRole.get(self.request,
roles[0].uuid)
self.assertIsInstance(ret_val, api.tuskar.OvercloudRole)
def test_role_get_by_image(self):
plan = api.tuskar.OvercloudPlan(self.tuskarclient_plans.first())
image = self.glanceclient_images.first()
roles = self.tuskarclient_roles.list()
with patch('tuskarclient.v2.roles.RoleManager.list',
return_value=roles):
ret_val = api.tuskar.OvercloudRole.get_by_image(
self.request, plan, image)
self.assertIsInstance(ret_val, api.tuskar.OvercloudRole)
self.assertEqual(ret_val.name, 'Controller')