def test_check_section(self): """ Test check_section """ CFG = ConfigObj('config.ini', encoding='UTF-8') self.assertFalse(config.check_section(CFG, 'General')) self.assertTrue(config.check_section(CFG, 'General'))
def test_check_setting_str(self): """ Test check_setting_str """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['process_method'] = "copy" CFG['General']['git_password'] = "******" CFG['General']['extra_scripts'] = None # normal self.assertEqual( config.check_setting_str(CFG, 'General', 'process_method', 'move'), 'copy') self.assertEqual( config.check_setting_str(CFG, 'General', 'git_password', '', silent=False, censor_log=True), 'SFa342FHb_') # None value type self.assertEqual( config.check_setting_str(CFG, 'General', 'extra_scripts', ''), '') # unmatched section self.assertEqual( config.check_setting_str(CFG, 'Subtitles', 'subtitles_languages', 'eng'), 'eng') # wrong def_val type self.assertEqual( config.check_setting_str(CFG, 'General', 'process_method', ['fail']), 'copy')
def test_check_setting_float(self): """ Test check_setting_float """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['fanart_background_opacity'] = 0.5 CFG['General']['log_size'] = None # normal self.assertEqual(config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 0.4), 0.5) self.assertEqual(CFG['General']['fanart_background_opacity'], 0.5) # force min/max self.assertEqual(config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 0.7, 0.6, 1.0), 0.7) self.assertEqual(CFG['General']['fanart_background_opacity'], 0.7) self.assertEqual(config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 0.7, 0.8, 1.0, False), 0.8) self.assertEqual(CFG['General']['fanart_background_opacity'], 0.8) self.assertEqual(config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 0.3, 0.1, 0.4), 0.3) self.assertEqual(CFG['General']['fanart_background_opacity'], 0.3) self.assertEqual(config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 0.1, 0.1, 0.2, False), 0.2) self.assertEqual(CFG['General']['fanart_background_opacity'], 0.2) # None value type + silent off self.assertEqual(config.check_setting_float(CFG, 'General', 'log_size', 10.0, silent=False), 10.0) self.assertEqual(CFG['General']['log_size'], 10.0) # unmatched section self.assertEqual(config.check_setting_float(CFG, 'Kodi', 'log_size', 2.5), 2.5) self.assertEqual(CFG['Kodi']['log_size'], 2.5) # wrong def_val/min/max type self.assertEqual(config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 'ba', 'min', 'max'), 0.2) self.assertEqual(CFG['General']['fanart_background_opacity'], 0.2)
def test_check_setting_int(self): """ Test check_setting_int """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['indexer_timeout'] = 60 CFG['General']['use_icacls'] = 'True' CFG['General']['use_nzbs'] = 'False' CFG['General']['status_default'] = None # normal self.assertEqual( config.check_setting_int(CFG, 'General', 'indexer_timeout', 30), 60) # true/false => int self.assertEqual( config.check_setting_int(CFG, 'General', 'use_icacls', 1), 1) self.assertEqual( config.check_setting_int(CFG, 'General', 'use_nzbs', 0), 0) # None value type + silent off self.assertEqual( config.check_setting_int(CFG, 'General', 'status_default', 5, silent=False), 5) # unmatched section self.assertEqual( config.check_setting_int(CFG, 'Subtitles', 'subtitles_finder_frequency', 1), 1) # wrong def_val type self.assertEqual( config.check_setting_int(CFG, 'General', 'indexer_timeout', 'ba'), 60)
def test_check_setting_float(self): """ Test check_setting_float """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['fanart_background_opacity'] = 0.2 CFG['General']['log_size'] = None # normal self.assertEqual( config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 0.4), 0.2) # None value type + silent off self.assertEqual( config.check_setting_float(CFG, 'General', 'log_size', 10.0, silent=False), 10.0) # unmatched section self.assertEqual( config.check_setting_float(CFG, 'Kodi', 'log_size', 2.5), 2.5) # wrong def_val type self.assertEqual( config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 'ba'), 0.2)
def test_check_setting_int(self): """ Test check_setting_int """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8', options={'indent_type': ' '}) config.check_section(CFG, 'General') CFG['General']['indexer_timeout'] = 60 CFG['General']['use_icacls'] = 'True' CFG['General']['use_nzbs'] = 'False' CFG['General']['status_default'] = None # normal self.assertEqual( config.check_setting_int(CFG, 'General', 'indexer_timeout', 30), 60) self.assertEqual(CFG['General']['indexer_timeout'], 60) # force min/max self.assertEqual( config.check_setting_int(CFG, 'General', 'indexer_timeout', 150, 100, 200), 150) self.assertEqual(CFG['General']['indexer_timeout'], 150) self.assertEqual( config.check_setting_int(CFG, 'General', 'indexer_timeout', 250, 200, 300, False), 200) self.assertEqual(CFG['General']['indexer_timeout'], 200) self.assertEqual( config.check_setting_int(CFG, 'General', 'indexer_timeout', 90, 50, 100), 90) self.assertEqual(CFG['General']['indexer_timeout'], 90) self.assertEqual( config.check_setting_int(CFG, 'General', 'indexer_timeout', 20, 10, 30, False), 30) self.assertEqual(CFG['General']['indexer_timeout'], 30) # true/false => int self.assertEqual( config.check_setting_int(CFG, 'General', 'use_icacls', 1), 1) self.assertEqual(CFG['General']['use_icacls'], 'True') self.assertEqual( config.check_setting_int(CFG, 'General', 'use_nzbs', 0), 0) self.assertEqual(CFG['General']['use_nzbs'], 'False') # None value type + silent off self.assertEqual( config.check_setting_int(CFG, 'General', 'status_default', 5, silent=False), 5) self.assertEqual(CFG['General']['status_default'], 5) # unmatched section self.assertEqual( config.check_setting_int(CFG, 'Subtitles', 'subtitles_finder_frequency', 1), 1) self.assertEqual(CFG['Subtitles']['subtitles_finder_frequency'], 1) # wrong def_val/min/max type self.assertEqual( config.check_setting_int(CFG, 'General', 'indexer_timeout', 'ba', 'min', 'max'), 30) self.assertEqual(CFG['General']['indexer_timeout'], 30)
def test_check_section(self): """ Test check_section """ CFG = ConfigObj('config.ini', encoding='UTF-8', options={'indent_type': ' '}) self.assertFalse(config.check_section(CFG, 'General')) self.assertTrue(config.check_section(CFG, 'General'))
def test_config_migrator(self): """ Test migrate_config """ # TODO: Assert the 'too-advanced-config-version' error CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['config_version'] = 0 sickbeard.CONFIG_VERSION = 11 sickbeard.CONFIG_FILE = 'config.ini' migrator = config.ConfigMigrator(CFG) migrator.migrate_config()
def test_check_setting_float(self): """ Test check_setting_float """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['fanart_background_opacity'] = 0.2 CFG['General']['log_size'] = None # normal self.assertEqual(config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 0.4), 0.2) # None value type + silent off self.assertEqual(config.check_setting_float(CFG, 'General', 'log_size', 10.0, silent=False), 10.0) # unmatched section self.assertEqual(config.check_setting_float(CFG, 'Kodi', 'log_size', 2.5), 2.5) # wrong def_val type self.assertEqual(config.check_setting_float(CFG, 'General', 'fanart_background_opacity', 'ba'), 0.2)
def test_check_setting_str(self): """ Test check_setting_str """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['process_method'] = "copy" CFG['General']['git_password'] = "******" CFG['General']['extra_scripts'] = None # normal self.assertEqual(config.check_setting_str(CFG, 'General', 'process_method', 'move'), 'copy') self.assertEqual(config.check_setting_str(CFG, 'General', 'git_password', '', silent=False, censor_log=True), 'SFa342FHb_') # None value type self.assertEqual(config.check_setting_str(CFG, 'General', 'extra_scripts', ''), '') # unmatched section self.assertEqual(config.check_setting_str(CFG, 'Subtitles', 'subtitles_languages', 'eng'), 'eng') # wrong def_val type self.assertEqual(config.check_setting_str(CFG, 'General', 'process_method', ['fail']), 'copy')
def test_check_setting_bool(self): """ Test check_setting_bool """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8', options={'indent_type': ' '}) config.check_section(CFG, 'General') CFG['General']['debug'] = True CFG['General']['season_folders_default'] = False CFG['General']['dbdebug'] = None # normal self.assertTrue(config.check_setting_bool(CFG, 'General', 'debug')) self.assertFalse( config.check_setting_bool(CFG, 'General', 'season_folders_default', def_val=True)) # None value type self.assertFalse( config.check_setting_bool(CFG, 'General', 'dbdebug', False)) # unmatched item self.assertTrue( config.check_setting_bool(CFG, 'General', 'git_reset', def_val=True)) # unmatched section self.assertFalse( config.check_setting_bool(CFG, 'Subtitles', 'use_subtitles', def_val=False)) # wrong def_val type, silent = off self.assertTrue( config.check_setting_bool(CFG, 'General', 'debug', def_val=['fail'], silent=False))
def test_check_setting_int(self): """ Test check_setting_int """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['indexer_timeout'] = 60 CFG['General']['use_icacls'] = 'True' CFG['General']['use_nzbs'] = 'False' CFG['General']['status_default'] = None # normal self.assertEqual(config.check_setting_int(CFG, 'General', 'indexer_timeout', 30), 60) # true/false => int self.assertEqual(config.check_setting_int(CFG, 'General', 'use_icacls', 1), 1) self.assertEqual(config.check_setting_int(CFG, 'General', 'use_nzbs', 0), 0) # None value type + silent off self.assertEqual(config.check_setting_int(CFG, 'General', 'status_default', 5, silent=False), 5) # unmatched section self.assertEqual(config.check_setting_int(CFG, 'Subtitles', 'subtitles_finder_frequency', 1), 1) # wrong def_val type self.assertEqual(config.check_setting_int(CFG, 'General', 'indexer_timeout', 'ba'), 60)
def test_check_setting_bool(self): """ Test check_setting_bool """ # setup CFG = ConfigObj('config.ini', encoding='UTF-8') config.check_section(CFG, 'General') CFG['General']['debug'] = True CFG['General']['season_folders_default'] = False CFG['General']['dbdebug'] = None # normal self.assertTrue(config.check_setting_bool(CFG, 'General', 'debug')) self.assertFalse(config.check_setting_bool(CFG, 'General', 'season_folders_default', def_val=True)) # None value type self.assertFalse(config.check_setting_bool( CFG, 'General', 'dbdebug', False)) # unmatched item self.assertTrue(config.check_setting_bool(CFG, 'General', 'git_reset', def_val=True)) # unmatched section self.assertFalse(config.check_setting_bool(CFG, 'Subtitles', 'use_subtitles', def_val=False)) # wrong def_val type, silent = off self.assertTrue(config.check_setting_bool( CFG, 'General', 'debug', def_val=['fail'], silent=False))