def test_with_single_parameter_file_and_nonfile_arg(self): with open("test.param", 'w') as f: f.write("a = 2\nb = 3\n") parameter_sets, input_data, script_args = commands.parse_arguments(["spam", "test.param"], self.input_datastore) self.assertEqual(parameter_sets, [{'this': 'mock'}]) self.assertEqual(input_data, []) self.assertEqual(script_args, "spam <parameters>") os.remove("test.param")
def test_with_cmdline_parameters(self): with open("test.param", 'w') as f: f.write("a = 2\nb = 3\n") parameter_sets, input_data, script_args = commands.parse_arguments(["test.param", "a=17", "umlue=43"], self.input_datastore) self.assertEqual(parameter_sets, [{'this': 'mock', 'a': 17, 'umlue': 43}]) self.assertEqual(input_data, []) self.assertEqual(script_args, "<parameters>") os.remove("test.param")
def test_with_cmdline_parameters(self): with open("test.param", 'w') as f: f.write("a = 2\nb = 3\n") parameter_sets, input_data, script_args = commands.parse_arguments(["test.param", "a=17", "umlue=43"], self.input_datastore) self.assertEqual(parameter_sets, [{'this': 'mock', 'a': 17, 'umlue': 43}]) self.assertEqual(input_data, []) self.assertEqual(script_args, "<parameters>") os.remove("test.param")
def test_with_single_parameter_file_and_nonfile_arg(self): with open("test.param", 'w') as f: f.write("a = 2\nb = 3\n") parameter_sets, input_data, script_args = commands.parse_arguments(["spam", "test.param"], self.input_datastore) self.assertEqual(parameter_sets, [{'this': 'mock'}]) self.assertEqual(input_data, []) self.assertEqual(script_args, "spam <parameters>") os.remove("test.param")
def test_with_arg_that_is_directory(self): test_dir = "__pycache__" # a directory that is likely to exist already, easier than creating one since we have mocked out os.mkdir if os.path.exists(test_dir): parameter_sets, input_data, script_args = commands.parse_arguments([test_dir], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(input_data, []) self.assertEqual(script_args, test_dir) else: raise unittest.SkipTest("test directory doesn't exist")
def test_with_arg_that_is_directory(self): test_dir = "__pycache__" # a directory that is likely to exist already, easier than creating one since we have mocked out os.mkdir if os.path.exists(test_dir): parameter_sets, input_data, script_args = commands.parse_arguments([test_dir], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(input_data, []) self.assertEqual(script_args, test_dir) else: raise unittest.SkipTest("test directory doesn't exist")
def test_with_single_datafile(self): data_content = "23496857243968b24cbc4275dc82470a\n" with open("this.is.not.a.parameter.file", 'w') as f: f.write(data_content) parameter_sets, input_data, script_args = commands.parse_arguments( ["this.is.not.a.parameter.file"], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(os.path.basename(input_data[0].path), "this.is.not.a.parameter.file") self.assertEqual(script_args, "this.is.not.a.parameter.file") os.remove("this.is.not.a.parameter.file")
def test_with_single_datafile(self): data_content = "23496857243968b24cbc4275dc82470a\n" with open("this.is.not.a.parameter.file", 'w') as f: f.write(data_content) parameter_sets, input_data, script_args = commands.parse_arguments( ["this.is.not.a.parameter.file"], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(os.path.basename(input_data[0].path), "this.is.not.a.parameter.file") self.assertEqual(script_args, "this.is.not.a.parameter.file") os.remove("this.is.not.a.parameter.file")
def test_with_everything(self): with open("test.param", 'w') as f: f.write("a = 2\nb = 3\n") data_content = "23496857243968b24cbc4275dc82470a\n" with open("this.is.not.a.parameter.file", 'w') as f: f.write(data_content) parameter_sets, input_data, script_args = commands.parse_arguments(["spam", "test.param", "eggs", "this.is.not.a.parameter.file", "a=17", "umlue=43", "beans"], self.input_datastore) self.assertEqual(parameter_sets, [{'this': 'mock', 'a': 17, 'umlue': 43}]) self.assertEqual(os.path.basename(input_data[0].path), "this.is.not.a.parameter.file") self.assertEqual(script_args, "spam <parameters> eggs this.is.not.a.parameter.file beans")
def test_with_everything(self): with open("test.param", 'w') as f: f.write("a = 2\nb = 3\n") data_content = "23496857243968b24cbc4275dc82470a\n" with open("this.is.not.a.parameter.file", 'w') as f: f.write(data_content) parameter_sets, input_data, script_args = commands.parse_arguments(["spam", "test.param", "eggs", "this.is.not.a.parameter.file", "a=17", "umlue=43", "beans"], self.input_datastore) self.assertEqual(parameter_sets, [{'this': 'mock', 'a': 17, 'umlue': 43}]) self.assertEqual(os.path.basename(input_data[0].path), "this.is.not.a.parameter.file") self.assertEqual(script_args, "spam <parameters> eggs this.is.not.a.parameter.file beans")
def test_with_nonfile_args(self): parameter_sets, input_data, script_args = commands.parse_arguments(["spam", "eggs"], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(input_data, []) self.assertEqual(script_args, "spam eggs")
def test_with_no_args(self): parameter_sets, input_data, script_args = commands.parse_arguments([], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(input_data, []) self.assertEqual(script_args, "")
def test_with_nonfile_args(self): parameter_sets, input_data, script_args = commands.parse_arguments(["spam", "eggs"], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(input_data, []) self.assertEqual(script_args, "spam eggs")
def test_with_no_args(self): parameter_sets, input_data, script_args = commands.parse_arguments([], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(input_data, []) self.assertEqual(script_args, "")
def test_with_arg_that_is_directory(self): parameter_sets, input_data, script_args = commands.parse_arguments([self.tmp_test_dir], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(input_data, []) self.assertEqual(script_args, self.tmp_test_dir)
def test_with_arg_that_is_directory(self): parameter_sets, input_data, script_args = commands.parse_arguments( [self.tmp_test_dir], self.input_datastore) self.assertEqual(parameter_sets, []) self.assertEqual(input_data, []) self.assertEqual(script_args, self.tmp_test_dir)