def test_fail(name, opts, expected): stack = """ SimpleTest.is@SimpleTest/SimpleTest.js:312:5 @caps/tests/mochitest/test_bug246699.html:53:1 """.strip('\n') buf = BytesIO() fmt = formatters[name](**opts) logger = StructuredLogger('test_logger') logger.add_handler(StreamHandler(buf, fmt)) logger.suite_start(['test_foo', 'test_bar', 'test_baz']) logger.test_start('test_foo') logger.test_end('test_foo', 'FAIL', 'PASS', 'expected 0 got 1') logger.test_start('test_bar') logger.test_status('test_bar', 'a subtest', 'FAIL', 'PASS', 'expected 0 got 1', stack) logger.test_status('test_bar', 'another subtest', 'TIMEOUT') logger.test_end('test_bar', 'OK') logger.test_start('test_baz') logger.test_end('test_baz', 'PASS', 'FAIL') logger.suite_end() result = buf.getvalue() print("Dumping result for copy/paste:") print(result) assert result == expected
def test_known_intermittent(name, opts, expected): buf = BytesIO() fmt = formatters[name](**opts) logger = StructuredLogger('test_logger') logger.add_handler(StreamHandler(buf, fmt)) logger.suite_start(['test_foo', 'test_bar', 'test_baz']) logger.test_start('test_foo') logger.test_end('test_foo', 'FAIL', 'PASS', known_intermittent=['FAIL']) logger.test_start('test_bar') logger.test_status('test_bar', 'a subtest', 'PASS', 'FAIL', known_intermittent=['PASS']) logger.test_end('test_bar', 'OK') logger.test_start('test_baz') logger.test_end('test_baz', 'FAIL', 'FAIL', 'expected 0 got 1', known_intermittent=['PASS']) logger.suite_end() result = buf.getvalue() print("Dumping result for copy/paste:") print(result) assert result == expected
def test_precondition_failed(name, opts, expected): buf = BytesIO() fmt = formatters[name](**opts) logger = StructuredLogger('test_logger') logger.add_handler(StreamHandler(buf, fmt)) logger.suite_start(['test_foo', 'test_bar']) logger.test_start('test_foo') logger.test_end('test_foo', 'PRECONDITION_FAILED') logger.test_start('test_bar') logger.test_status('test_bar', 'a subtest', 'PASS') logger.test_status('test_bar', 'another subtest', 'PRECONDITION_FAILED') logger.test_end('test_bar', 'OK') logger.suite_end() result = buf.getvalue() print("Dumping result for copy/paste:") print(result) assert result == expected