Ejemplo n.º 1
0
 def test_input_value_string_nostringenv(self):
     self.assertEqual(
         '"TestString"',
         wdl.get_input_value_from_potential_selector_or_generator(
             "TestString", None, string_environment=False
         ),
     )
Ejemplo n.º 2
0
 def test_input_value_int_nostringenv(self):
     self.assertEqual(
         42,
         wdl.get_input_value_from_potential_selector_or_generator(
             42, None, string_environment=False
         ),
     )
Ejemplo n.º 3
0
 def test_input_value_none_stringenv(self):
     self.assertEqual(
         None,
         wdl.get_input_value_from_potential_selector_or_generator(
             None, None, string_environment=True
         ),
     )
Ejemplo n.º 4
0
 def test_resolve_filename_in_inpselect(self):
     fn = Filename(extension=".ext")
     ti = {"ti": ToolInput("ti", fn)}
     b = StringFormatter("fn: {place}", place=InputSelector("ti"))
     res = wdl.get_input_value_from_potential_selector_or_generator(b, ti)
     self.assertEqual(
         f'fn: ~{{select_first([ti, "{fn.generated_filename()}"])}}', res)
Ejemplo n.º 5
0
    def test_input_value_filename_nostringenv(self):

        fn = Filename()
        self.assertEqual(
            '"%s"' % fn.generated_filename(),
            wdl.get_input_value_from_potential_selector_or_generator(
                fn, None, string_environment=False),
        )
Ejemplo n.º 6
0
    def test_input_value_filename_stringenv(self):
        import uuid

        fn = Filename(guid=str(uuid.uuid4()))
        self.assertEqual(
            fn.generated_filename(),
            wdl.get_input_value_from_potential_selector_or_generator(
                fn, None, string_environment=True
            ),
        )
Ejemplo n.º 7
0
    def test_input_value_wdl_callable(self):
        class CallableWdl:
            def wdl(self):
                return "unbelievable"

        self.assertEqual(
            "unbelievable",
            wdl.get_input_value_from_potential_selector_or_generator(
                CallableWdl(), None),
        )
Ejemplo n.º 8
0
 def test_input_value_cpuselect_stringenv(self):
     # CpuSelector relies on their being a runtime_cpu attribute,
     # this test will assume it's present, and '' will test ensure
     # that it is actually present
     ti = {"runtime_cpu": ToolInput("runtime_cpu", Int(), default=1)}
     inp = CpuSelector()
     self.assertEqual(
         "~{select_first([runtime_cpu, 1])}",
         wdl.get_input_value_from_potential_selector_or_generator(
             inp, ti, string_environment=True),
     )
Ejemplo n.º 9
0
 def test_string_formatter_two_param(self):
     # vardict input format
     d = {
         "tumorInputName": ToolInput("tumorInputName", String()),
         "normalInputName": ToolInput("normalInputName", String()),
     }
     b = StringFormatter(
         "{tumorName}:{normalName}",
         tumorName=InputSelector("tumorInputName"),
         normalName=InputSelector("normalInputName"),
     )
     res = wdl.get_input_value_from_potential_selector_or_generator(b, d)
     self.assertEqual("${tumorInputName}:${normalInputName}", res)
Ejemplo n.º 10
0
 def test_string_formatter_optional_inpselect_with_default(self):
     ti = {"ti": ToolInput("ti", String(optional=True), default="hi")}
     b = StringFormatter("{place} michael", place=InputSelector("ti"))
     res = wdl.get_input_value_from_potential_selector_or_generator(b, ti)
     self.assertEqual('${if defined(ti) then ti else "hi"} michael', res)
Ejemplo n.º 11
0
 def test_string_formatter_one_input_selector_param(self):
     d = {"random_input": ToolInput("random_input", String())}
     b = StringFormatter("an input {arg}", arg=InputSelector("random_input"))
     res = wdl.get_input_value_from_potential_selector_or_generator(b, d)
     self.assertEqual("an input ${random_input}", res)
Ejemplo n.º 12
0
 def test_string_formatter_one_string_param(self):
     b = StringFormatter("there's {one} arg", one="a string")
     res = wdl.get_input_value_from_potential_selector_or_generator(b, None)
     self.assertEqual("there's a string arg", res)
Ejemplo n.º 13
0
 def test_string_formatter(self):
     b = StringFormatter("no format")
     res = wdl.get_input_value_from_potential_selector_or_generator(b, None)
     self.assertEqual("no format", res)