コード例 #1
0
 def test_parse_raises_errors_on_invalid_urls(self, m_exists):
     user_values = {
         "UA_CONTRACT_URL": "htp://contract"  # no acceptable url scheme
     }
     with mock.patch.dict("uaclient.config.os.environ", values=user_values):
         with pytest.raises(exceptions.UserFacingError) as excinfo:
             parse_config()
     expected_msg = "Invalid url in config. contract_url: htp://contract"
     assert expected_msg == excinfo.value.msg
コード例 #2
0
 def test_parse_config_uses_defaults_when_no_config_present(self, m_exists):
     cwd = os.getcwd()
     with mock.patch.dict("uaclient.config.os.environ", values={}):
         config = parse_config()
     expected_calls = [
         mock.call("{}/uaclient.conf".format(cwd)),
         mock.call("/etc/ubuntu-advantage/uaclient.conf"),
     ]
     assert expected_calls == m_exists.call_args_list
     expected_default_config = {
         "contract_url": "https://contracts.canonical.com",
         "data_dir": "/var/lib/ubuntu-advantage",
         "log_file": "/var/log/ubuntu-advantage.log",
         "log_level": "INFO",
     }
     assert expected_default_config == config
コード例 #3
0
 def test_parse_config_scrubs_user_environ_values(self, m_exists):
     user_values = {
         "UA_CONTRACT_URL": "https://contract",
         "ua_data_dir": "~/somedir",
         "Ua_LoG_FiLe": "some.log",
         "UA_LOG_LEVEL": "debug",
     }
     with mock.patch.dict("uaclient.config.os.environ", values=user_values):
         config = parse_config()
     expanded_dir = os.path.expanduser("~")
     expected_default_config = {
         "contract_url": "https://contract",
         "data_dir": "{}/somedir".format(expanded_dir),
         "log_file": "some.log",
         "log_level": "DEBUG",
     }
     assert expected_default_config == config