Ejemplo n.º 1
0
 def __init__(self, *args,
              outputs=None,
              inputs=None,
              implicit_inputs=None,
              orderonly_inputs=None):
     nargs = len(args)
     if nargs > 0 and outputs is not None:
         raise TypeError("cannot mix positional and keyword outputs")
     if nargs > 1 and inputs is not None:
         raise TypeError("cannot mix positional and keyword inputs")
     if nargs == 0:
         self._init_io(outputs=outputs, inputs=inputs)
     elif nargs == 1:
         if outputs is not None:
             raise TypeError("cannot mix positional and keyword outputs")
         self._init_io(outputs=args[0], inputs=inputs)
     else:
         if inputs is not None:
             raise TypeError("cannot mix positional and keyword inputs")
         self._init_io(outputs=args[0], inputs=args[1:])
     self._implicit_inputs = tuple(as_flat_list(implicit_inputs))
     self._orderonly_inputs = tuple(as_flat_list(orderonly_inputs))
     if not self._outputs:
         raise ValueError("phony object with no outputs")
Ejemplo n.º 2
0
 def test_complex_rec(self):
     self.assertEqual(as_flat_list([[["a"], "b"], ["c", [["d"]]]]),
                      ["a", "b", "c", "d"])
Ejemplo n.º 3
0
 def test_singleton_list3(self):
     self.assertEqual(as_flat_list([[["foo"]]]), ["foo"])
Ejemplo n.º 4
0
 def test_frozenset(self):
     self.assertCountEqual(as_flat_list(frozenset(("foo", "bar"))),
                           ["foo", "bar"])
Ejemplo n.º 5
0
 def test_tuple(self):
     self.assertEqual(as_flat_list(("foo", "bar")), ["foo", "bar"])
Ejemplo n.º 6
0
 def test_list(self):
     self.assertEqual(as_flat_list(["foo", "bar"]), ["foo", "bar"])
Ejemplo n.º 7
0
 def test_singleton(self):
     self.assertEqual(as_flat_list("foo"), ["foo"])
Ejemplo n.º 8
0
 def test_none(self):
     self.assertEqual(as_flat_list(None), [])
Ejemplo n.º 9
0
 def _init_io(self, outputs=None, inputs=None):
     self._outputs = tuple(as_flat_list(outputs))
     self._inputs = tuple(as_flat_list(inputs))
Ejemplo n.º 10
0
 def __init__(self, *targets):
     self._targets = tuple(as_flat_list(targets))
Ejemplo n.º 11
0
 def outputs(self):
     """Return all the explicit output file names of this command."""
     return as_flat_list(self.output_placeholders.values())
Ejemplo n.º 12
0
 def formatter(self):
     return " ".join(shquote(as_flat_list(getattr(self, name))))