Merge "Add storperf reportign status page Create associated static storperf page...
[releng.git] / utils / test / testapi / opnfv_testapi / tests / unit / common / test_config.py
1 import ConfigParser
2 import os
3
4 import pytest
5
6 from opnfv_testapi.common import config
7
8
9 @pytest.fixture()
10 def config_dir():
11     return os.path.dirname(__file__)
12
13
14 @pytest.mark.parametrize('exception, config_file, excepted', [
15     (config.ParseError, None, '/etc/opnfv_testapi/config.ini not found'),
16     (ConfigParser.NoSectionError, 'nosection.ini', 'No section:'),
17     (config.ParseError, 'noparam.ini', 'No parameter:'),
18     (config.ParseError, 'notint.ini', 'Not int:'),
19     (config.ParseError, 'notboolean.ini', 'Not boolean:')])
20 def pytest_config_exceptions(config_dir, exception, config_file, excepted):
21     file = '{}/{}'.format(config_dir, config_file) if config_file else None
22     with pytest.raises(exception) as error:
23         config.APIConfig().parse(file)
24     assert excepted in str(error.value)
25
26
27 def test_config_success():
28     config_dir = os.path.join(os.path.dirname(__file__),
29                               '../../../../etc/config.ini')
30     conf = config.APIConfig().parse(config_dir)
31     assert conf.mongo_url == 'mongodb://127.0.0.1:27017/'
32     assert conf.mongo_dbname == 'test_results_collection'
33     assert conf.api_port == 8000
34     assert conf.api_debug_on is True
35     assert conf.api_authenticate_on is False
36     assert conf.swagger_base_url == 'http://localhost:8000'