From d579e62b431a31856a03098dc5323948ccfa4fdb Mon Sep 17 00:00:00 2001 From: Emma Foley Date: Wed, 29 Nov 2017 23:34:15 +0000 Subject: Move tests: unit/common * Fix pylint errors * Add TODOs Some errors are ignored locally, as they were a symptom of other problems. These issues have been flagged with a TODO, and should be fixed later. JIRA: YARDSTICK-837 Change-Id: I2847c380556985fae2c92bb8a7da9c47e91e1338 Signed-off-by: Emma Foley --- .../tests/unit/common/test_template_format.py | 54 ++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 yardstick/tests/unit/common/test_template_format.py (limited to 'yardstick/tests/unit/common/test_template_format.py') diff --git a/yardstick/tests/unit/common/test_template_format.py b/yardstick/tests/unit/common/test_template_format.py new file mode 100644 index 000000000..44aa80333 --- /dev/null +++ b/yardstick/tests/unit/common/test_template_format.py @@ -0,0 +1,54 @@ +# 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. + +# yardstick: this file is copied from python-heatclient and slightly modified + +from __future__ import absolute_import +import mock +import unittest +import yaml + +from yardstick.common import template_format + + +class TemplateFormatTestCase(unittest.TestCase): + + def test_parse_to_value_exception(self): + + # TODO(elfoley): Don't hide the error that occurs in + # template_format.parse + # TODO(elfoley): Separate these tests; one per error type + with mock.patch.object(yaml, 'load') as yaml_loader: + yaml_loader.side_effect = yaml.scanner.ScannerError() + self.assertRaises(ValueError, template_format.parse, 'FOOBAR') + yaml_loader.side_effect = yaml.parser.ParserError() + self.assertRaises(ValueError, template_format.parse, 'FOOBAR') + yaml_loader.side_effect = \ + yaml.reader.ReaderError('', '', '', '', '') + self.assertRaises(ValueError, template_format.parse, 'FOOBAR') + + def test_parse_no_version_format(self): + + yaml = '' + self.assertRaises(ValueError, template_format.parse, yaml) + yaml2 = "Parameters: {}\n" \ + "Mappings: {}\n" \ + "Resources: {}\n" \ + "Outputs: {}" + self.assertRaises(ValueError, template_format.parse, yaml2) + + +def main(): + unittest.main() + +if __name__ == '__main__': + main() -- cgit 1.2.3-korg