def test_file_name_with_escaped_space(self): dep = action_tracer.parse_dep_edges( "output.txt: source\\ input.cc includes/header.h") self.assertEqual(dep.ins, {"source input.cc", "includes/header.h"}) self.assertEqual(dep.outs, {"output.txt"})
def test_output_with_multiple_inputs_unusual_spacing(self): dep = action_tracer.parse_dep_edges( " output.txt : input.cc includes/header.h ") self.assertEqual(dep.ins, {"input.cc", "includes/header.h"}) self.assertEqual(dep.outs, {"output.txt"})
def test_output_only(self): dep = action_tracer.parse_dep_edges("output.txt:") self.assertEqual(dep.ins, set()) self.assertEqual(dep.outs, {"output.txt"})
def test_output_with_one_input(self): dep = action_tracer.parse_dep_edges("output.txt:input.cc") self.assertEqual(dep.ins, {"input.cc"}) self.assertEqual(dep.outs, {"output.txt"})
def test_invalid_input(self): with self.assertRaises(ValueError): action_tracer.parse_dep_edges( "output.txt input1.txt") # missing ":"