def _test_command_line_ok(self, argv, expected_output): stdout = StringIO() with patch('sys.stdout', stdout): with patch('sys.argv', argv): bincopy._main() self.assertEqual(stdout.getvalue().rstrip(), expected_output.rstrip())
def _test_command_line_raises(self, argv, expected_output): stdout = StringIO() try: with patch('sys.stdout', stdout): with patch('sys.argv', argv): bincopy._main() finally: self.assertEqual(stdout.getvalue(), expected_output)
def _test_command_line_raises(self, argv, expected_output): sys.argv = argv stdout = sys.stdout sys.stdout = StringIO() try: bincopy._main() finally: actual_output = sys.stdout.getvalue() sys.stdout = stdout self.assertEqual(actual_output, expected_output)
def _test_command_line_ok_bytes(self, argv, expected_output): if sys.version_info[0] >= 3: Stdout = namedtuple('stdout', ['buffer']) stdout = Stdout(BytesIO()) with patch('sys.stdout', stdout): with patch('sys.argv', argv): bincopy._main() self.assertEqual(stdout.buffer.getvalue(), expected_output) else: stdout = StringIO() with patch('sys.stdout', stdout): with patch('sys.argv', argv): bincopy._main() self.assertEqual(stdout.getvalue(), expected_output)