def test_output_variables_option(self): config_obj = dict(output_variables='hanni, nanni, pfanni') config = get_config_dict(**config_obj) self.assertIn('output_variables', config) self.assertEqual([('hanni', None), ('nanni', None), ('pfanni', None)], config['output_variables']) config_obj = dict(output_variables='') with self.assertRaises(ValueError) as cm: get_config_dict(**config_obj) self.assertEqual( "output_variables must be a list of existing variable names", f'{cm.exception}') config_obj = dict(output_variables='a*,') with self.assertRaises(ValueError) as cm: get_config_dict(**config_obj) self.assertEqual( "output_variables must be a list of existing variable names", f'{cm.exception}')
def test_output_region_option(self): config_obj = dict(output_region='-10.5, 5., 10.5, 25.') config = get_config_dict(**config_obj) self.assertIn('output_region', config) self.assertEqual([-10.5, 5., 10.5, 25.], config['output_region']) config_obj = dict(output_region='50,_2,55,21') with self.assertRaises(ValueError) as cm: get_config_dict(**config_obj) self.assertEqual( "output_region must have the form <lon_min>,<lat_min>,<lon_max>,<lat_max>," " where all four numbers must be floating point numbers in degrees", f'{cm.exception}') config_obj = dict(output_region='50, 20, 55') with self.assertRaises(ValueError) as cm: get_config_dict(**config_obj) self.assertEqual( "output_region must have the form <lon_min>,<lat_min>,<lon_max>,<lat_max>," " where all four numbers must be floating point numbers in degrees", f'{cm.exception}')
def test_config_file_alone(self): try: _create_temp_yaml(TEMP_PATH_FOR_YAML, CONFIG_2_NAME, CONFIG_1_YAML) config_obj = dict(config_files=CONFIG_1_FILE_LIST) _create_temp_yaml(TEMP_PATH_FOR_YAML, CONFIG_1_NAME, config_obj) config = get_config_dict(**config_obj) self.assertIsNotNone(config) self.assertEqual([2000, 1000], config['output_size']) self.assertEqual([0, 20, 20, 30], config['output_region']) self.assertEqual([('x', None), ('y', None), ('z*', None)], config['output_variables']) finally: if os.path.exists(TEMP_PATH_FOR_YAML): shutil.rmtree(TEMP_PATH_FOR_YAML) print('Successfully removed folder')