diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2018-10-11 16:56:50 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-11 16:56:50 -0400 |
commit | d4f72e18bedda726a74ec0960e59e304055f9039 (patch) | |
tree | c73d3d03ea186c5a5bd944cf2204e8ac519ce716 /tools/util_test.py | |
parent | c814d5a9140d88bf1633b74742e64436e1c75667 (diff) |
Improve tools/unit_tests.py (#958)
Checks the output more carefully. The first line of output from
js/unit_tests.ts should be something like "running 96 tests"
And the last line should be something like
"test result: ok. 96 passed; 0 failed; 0 ignored; 0 measured; 36
filtered out"
This parses those strings and make sure they align.
This will catch silent death bugs.
Diffstat (limited to 'tools/util_test.py')
-rw-r--r-- | tools/util_test.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/tools/util_test.py b/tools/util_test.py index e40d0aed0..4adf0d658 100644 --- a/tools/util_test.py +++ b/tools/util_test.py @@ -1,5 +1,8 @@ # Copyright 2018 the Deno authors. All rights reserved. MIT license. from util import pattern_match, parse_exit_code, shell_quote_win +import util +import os +import sys def pattern_match_test(): @@ -44,10 +47,42 @@ def shell_quote_win_test(): 'a"b""c\\d\\"e\\\\') +def parse_unit_test_output_test(): + print "Testing util.parse_unit_test_output()..." + # This is an example of a successful unit test output. + output = open( + os.path.join(util.root_path, "tools/testdata/unit_test_output1.txt")) + (actual, expected) = util.parse_unit_test_output(output, False) + assert actual == 96 + assert expected == 96 + + # This is an example of a silently dying unit test. + output = open( + os.path.join(util.root_path, "tools/testdata/unit_test_output2.txt")) + (actual, expected) = util.parse_unit_test_output(output, False) + assert actual == None + assert expected == 96 + + # This is an example of compiling before successful unit tests. + output = open( + os.path.join(util.root_path, "tools/testdata/unit_test_output3.txt")) + (actual, expected) = util.parse_unit_test_output(output, False) + assert actual == 96 + assert expected == 96 + + # Check what happens on empty output. + from StringIO import StringIO + output = StringIO("\n\n\n") + (actual, expected) = util.parse_unit_test_output(output, False) + assert actual == None + assert expected == None + + def util_test(): pattern_match_test() parse_exit_code_test() shell_quote_win_test() + parse_unit_test_output_test() if __name__ == '__main__': |