def test_implementation_arg(self): with buffout.OutputBuffer() as ob: args = self.parser.parse_args('--implementation'.split()) self.cmd.run(args) lines = ob.read_lines() self.assertEqual(len(lines), 1, lines) self.assertIn(self.IMPLEMENTATION_VERSION, lines[0])
def test_api_arg(self): with buffout.OutputBuffer() as ob: args = self.parser.parse_args('--api'.split()) self.cmd.run(args) lines = ob.read_lines() self.assertEqual(len(lines), 1, lines) self.assertIn(self.API_VERSION, lines[0])
def test_no_args(self): with buffout.OutputBuffer() as ob: args = self.parser.parse_args([]) self.cmd.run(args) lines = ob.read_lines() self.assertEqual(len(lines), 2, lines) self.assertIn(self.API_VERSION, lines[0]) self.assertIn(self.IMPLEMENTATION_VERSION, lines[1])
def test_clear(self): with buffout.OutputBuffer() as ob: print 'foobar' ob.clear() print 'wompwomp' output = ob.read() self.assertNotIn('foobar', output) self.assertIn('ompwom', output)
def test_stdout(self): stdout = sys.stdout ob = buffout.OutputBuffer() self.assertTrue(sys.stdout is stdout, "sys.stdout was replaced") ob.start() self.assertTrue(sys.stdout is not stdout, "sys.stdout not replaced") ob.stop() self.assertTrue(sys.stdout is stdout, "sys.stdout not restored")
def test_additional_output(self): with buffout.OutputBuffer() as ob: print 'foobar' lines = ob.read_lines() self.assertEqual(len(lines), 1) print 'wompwomp' lines = ob.read_lines() self.assertEqual(len(lines), 2)
def test_read_contents(self): with buffout.OutputBuffer() as ob: print 'foobar' print 'wompwomp' output = ob.read() self.assertEquals(len(output), 16, output) self.assertIn('foobar', output) self.assertIn('ompwom', output)
def test_read_lines(self): with buffout.OutputBuffer() as ob: print 'foobar' print 'wompwomp' lines = ob.read_lines() self.assertTrue(isinstance(lines, list)) self.assertEqual(len(lines), 2) self.assertIn('foobar', lines) self.assertIn('wompwomp', lines)
def test_buffer_contents(self): ob = buffout.OutputBuffer() ob.start() print 'foobar' print 'wompwomp' ob.stop() self.assertEqual('foobar\nwompwomp\n', unicode(ob)) self.assertEqual('foobar\nwompwomp\n', str(ob))
def test_buffer_preservation(self): ob = buffout.OutputBuffer() ob.start() print 'foobar' print 'wompwomp' ob.stop() output = ob.read() self.assertIn('foobar', output) self.assertIn('ompwom', output)
def setUp(self): self.managers = common.init_managers() # buffer stdout so we can assert what's printed self.ob = buffout.OutputBuffer() self.ob.start()
def raise_value_error(): with buffout.OutputBuffer(): raise ValueError()