def testExtraArgsNoFlush(self): lines = [] ls = utils.LineSplitter(self._testExtra, lines, 999, "extra") ls.write(b"\n\nHello World\n") ls.write(b"Foo\n Bar\r\n ") ls.write(b"") ls.write(b"Baz") ls.write(b"Moo\n\nx\n") self.assertEqual(lines, []) ls.close() self.assertEqual( lines, ["", "", "Hello World", "Foo", " Bar", " BazMoo", "", "x"])
def test(self): lines = [] ls = utils.LineSplitter(lines.append) ls.write(b"Hello World\n") self.assertEqual(lines, []) ls.write(b"Foo\n Bar\r\n ") ls.write(b"Baz") ls.write(b"Moo") self.assertEqual(lines, []) ls.flush() self.assertEqual(lines, ["Hello World", "Foo", " Bar"]) ls.close() self.assertEqual(lines, ["Hello World", "Foo", " Bar", " BazMoo"])
def __init__(self, debug, status_file, logger, throughput_samples, exp_size): """Initializes this class. """ self._debug = debug self._status_file = status_file self._logger = logger self._splitter = dict([(prog, utils.LineSplitter(self._ProcessOutput, prog)) for prog in PROG_ALL]) self._dd_pid = None self._dd_ready = False self._dd_tp_samples = throughput_samples self._dd_progress = [] # Expected size of transferred data self._exp_size = exp_size