X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=utils%2Ftest%2Ftestapi%2Fopnfv_testapi%2Ftests%2Funit%2Ftest_scenario.py;h=b62c1d294b7fc0d466cdfb89ac4818d689d565d8;hb=bd859d5cc368f630e899654cdbc8b11d978c0d07;hp=a5a4fb30fa3b07abd7e8ef57590c879c4d7448e3;hpb=f36fc889cfc92f50a4f053661f9ea841e4a5b045;p=releng.git diff --git a/utils/test/testapi/opnfv_testapi/tests/unit/test_scenario.py b/utils/test/testapi/opnfv_testapi/tests/unit/test_scenario.py index a5a4fb30f..b62c1d294 100644 --- a/utils/test/testapi/opnfv_testapi/tests/unit/test_scenario.py +++ b/utils/test/testapi/opnfv_testapi/tests/unit/test_scenario.py @@ -139,6 +139,7 @@ class TestScenarioUpdate(TestScenarioBase): def setUp(self): super(TestScenarioUpdate, self).setUp() self.scenario = self.create_return_name(self.req_d) + self.scenario_2 = self.create_return_name(self.req_2) def _execute(set_update): @functools.wraps(set_update) @@ -147,15 +148,45 @@ class TestScenarioUpdate(TestScenarioBase): self._update_and_assert(update, scenario) return magic - def test_renameScenario(self): + def _update(expected): + def _update(set_update): + @functools.wraps(set_update) + def wrap(self): + update, scenario = set_update(self, deepcopy(self.req_d)) + code, body = self.update(update, self.scenario) + getattr(self, expected)(code, scenario) + return wrap + return _update + + @_update('_success') + def test_renameScenario(self, scenario): new_name = 'nosdn-nofeature-noha' - new_scenario = deepcopy(self.req_d) - new_scenario['name'] = new_name + scenario['name'] = new_name + update_req = models.ScenarioUpdateRequest(field='name', + op='update', + locate={}, + term={'name': new_name}) + return update_req, scenario + + @_update('_forbidden') + def test_renameScenario_exist(self, scenario): + new_name = self.scenario_2 + scenario['name'] = new_name update_req = models.ScenarioUpdateRequest(field='name', op='update', locate={}, term={'name': new_name}) - self._update_and_assert(update_req, new_scenario, new_name) + return update_req, scenario + + @_update('_bad_request') + def test_renameScenario_noName(self, scenario): + new_name = self.scenario_2 + scenario['name'] = new_name + update_req = models.ScenarioUpdateRequest(field='name', + op='update', + locate={}, + term={}) + return update_req, scenario @_execute def test_addInstaller(self, scenario): @@ -297,12 +328,18 @@ class TestScenarioUpdate(TestScenarioBase): def _update_and_assert(self, update_req, new_scenario, name=None): code, _ = self.update(update_req, self.scenario) self.assertEqual(code, constants.HTTP_OK) - self._get_and_assert(self._none_default(name, self.scenario), + self._get_and_assert(_none_default(name, self.scenario), new_scenario) - @staticmethod - def _none_default(check, default): - return check if check else default + def _success(self, status, new_scenario): + self.assertEqual(status, constants.HTTP_OK) + self._get_and_assert(new_scenario.get('name'), new_scenario) + + def _forbidden(self, status, new_scenario): + self.assertEqual(status, constants.HTTP_FORBIDDEN) + + def _bad_request(self, status, new_scenario): + self.assertEqual(status, constants.HTTP_BAD_REQUEST) class TestScenarioDelete(TestScenarioBase): @@ -316,3 +353,7 @@ class TestScenarioDelete(TestScenarioBase): self.assertEqual(code, constants.HTTP_OK) code, _ = self.get(scenario) self.assertEqual(code, constants.HTTP_NOT_FOUND) + + +def _none_default(check, default): + return check if check else default