def test_classnames_strings_are_used_when_available(self): sys.stderr = StringIO.StringIO() std = StdOutput(mock.sentinel.test_result, mock.sentinel.args) std._print_tb(iter([[['foo', 'foobar', None]]])) sys.stderr.seek(0) out = sys.stderr.read() self.assertTrue('foo: foobar' in out)
def test_tb_is_rendered(self): sys.stderr = StringIO.StringIO() errors = iter([[get_tb(), ]]) std = StdOutput(mock.sentinel.test_result, mock.sentinel.args) std._print_tb(errors) sys.stderr.seek(0) out = sys.stderr.read() self.assertTrue('Exception' in out) self.assertTrue('Error message' in out)
def test_errors_are_processed(self): test_result = FakeTestResult(nb_errors=1, nb_failures=1) std = StdOutput(test_result, {'total': 10}) std._print_tb = mock.Mock() std.flush() self.assertEquals(2, std._print_tb.call_count)
def test_empty_tb_is_not_processed(self): std = StdOutput(mock.sentinel.test_result, mock.sentinel.args) std._print_tb(iter(([], [])))