diff --git a/tempest/cmd/cleanup.py b/tempest/cmd/cleanup.py index 2f54f9a642..8e686981a4 100644 --- a/tempest/cmd/cleanup.py +++ b/tempest/cmd/cleanup.py @@ -309,9 +309,9 @@ class TempestCleanup(command.Command): f.write(json.dumps(data, sort_keys=True, indent=2, separators=(',', ': '))) - def _load_json(self): + def _load_json(self, saved_state_json=SAVED_STATE_JSON): try: - with open(SAVED_STATE_JSON) as json_file: + with open(saved_state_json, 'rb') as json_file: self.json_data = json.load(json_file) except IOError as ex: diff --git a/tempest/tests/cmd/test_cleanup.py b/tempest/tests/cmd/test_cleanup.py new file mode 100644 index 0000000000..e4e8525703 --- /dev/null +++ b/tempest/tests/cmd/test_cleanup.py @@ -0,0 +1,26 @@ +# Copyright 2018 Red Hat, Inc. +# +# 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 tempest.cmd import cleanup +from tempest.tests import base + + +class TestTempestCleanup(base.TestCase): + + def test_load_json(self): + # instatiate "empty" TempestCleanup + c = cleanup.TempestCleanup(None, None, 'test') + test_saved_json = 'tempest/tests/cmd/test_saved_state_json.json' + # test if the file is loaded without any issues/exceptions + c._load_json(test_saved_json) diff --git a/tempest/tests/cmd/test_saved_state_json.json b/tempest/tests/cmd/test_saved_state_json.json new file mode 100644 index 0000000000..5c55331b8f --- /dev/null +++ b/tempest/tests/cmd/test_saved_state_json.json @@ -0,0 +1,16 @@ +{ + "domains": { + "default": "Default" + }, + "flavors": { + "1": "m1.tiny" + }, + "images": {}, + "projects": { + "268bcb63488b4aa2942ecaac0f85ed62": "demo" + }, + "roles": {}, + "users": { + "023e65a5922a454585a91c6af8310968": "demo" + } +}