import unittest import configparser from api_clients.api_client import get_protocol def get_force_ssl(value, useConfigParser): config = {} if useConfigParser: config = configparser.ConfigParser() config['general'] = { 'base_port': 80, 'force_ssl': value, } return get_protocol(config) class TestGetProtocol(unittest.TestCase): def test_dict_config_empty_http(self): config = {'general': {}} protocol = get_protocol(config) self.assertEqual(protocol, 'http') def test_dict_config_http(self): config = { 'general': { 'base_port': 80, }, } protocol = get_protocol(config) self.assertEqual(protocol, 'http') def test_dict_config_https(self): config = { 'general': { 'base_port': 443, }, } protocol = get_protocol(config) self.assertEqual(protocol, 'https') def test_dict_config_force_https(self): postive_values = ['yes', 'Yes', 'True', 'true', True] negative_values = ['no', 'No', 'False', 'false', False] for value in postive_values: self.assertEqual(get_force_ssl(value, False), 'https') for value in negative_values: self.assertEqual(get_force_ssl(value, False), 'http') def test_configparser_config_empty_http(self): config = configparser.ConfigParser() config['general'] = {} protocol = get_protocol(config) self.assertEqual(protocol, 'http') def test_configparser_config_http(self): config = configparser.ConfigParser() config['general'] = { 'base_port': 80, } protocol = get_protocol(config) self.assertEqual(protocol, 'http') def test_configparser_config_https(self): config = configparser.ConfigParser() config['general'] = { 'base_port': 443, } protocol = get_protocol(config) self.assertEqual(protocol, 'https') def test_configparser_config_force_https(self): postive_values = ['yes', 'Yes', 'True', 'true', True] negative_values = ['no', 'No', 'False', 'false', False] for value in postive_values: self.assertEqual(get_force_ssl(value, True), 'https') for value in negative_values: self.assertEqual(get_force_ssl(value, True), 'http')