Merge "Prohibit the importation of a list of libraries"
[yardstick.git] / yardstick / tests / unit / benchmark / contexts / test_base.py
1 # Copyright (c) 2018 Intel Corporation
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #      http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 import unittest
16
17 from yardstick.benchmark.contexts import base
18
19
20 class FlagsTestCase(unittest.TestCase):
21
22     def setUp(self):
23         self.flags = base.Flags()
24
25     def test___init__(self):
26         self.assertFalse(self.flags.no_setup)
27         self.assertFalse(self.flags.no_teardown)
28
29     def test___init__with_flags(self):
30         flags = base.Flags(no_setup=True)
31         self.assertTrue(flags.no_setup)
32         self.assertFalse(flags.no_teardown)
33
34     def test_parse(self):
35         self.flags.parse(no_setup=True, no_teardown="False")
36
37         self.assertTrue(self.flags.no_setup)
38         self.assertEqual(self.flags.no_teardown, "False")
39
40     def test_parse_forbidden_flags(self):
41         self.flags.parse(foo=42)
42         with self.assertRaises(AttributeError):
43             _ = self.flags.foo