annotate src/testdir/summarize.vim @ 18478:94223687df0e

Added tag v8.1.2233 for changeset e93cab5d0f0f27fad7882f1f412927df055b090d
author Bram Moolenaar <Bram@vim.org>
date Tue, 29 Oct 2019 04:30:05 +0100
parents ef35a3a70c24
children c77d7a415e59
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16951
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
1 if 1
17793
7f95fa061abc patch 8.1.1893: script to summarize test results can be improved
Bram Moolenaar <Bram@vim.org>
parents: 16976
diff changeset
2 " This is executed only with the eval feature
7f95fa061abc patch 8.1.1893: script to summarize test results can be improved
Bram Moolenaar <Bram@vim.org>
parents: 16976
diff changeset
3 set nocompatible
16951
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
4 func Count(match, type)
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
5 if a:type ==# 'executed'
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
6 let g:executed += (a:match+0)
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
7 elseif a:type ==# 'failed'
16976
7160dcd5c1d2 patch 8.1.1488: summary of tests has incorrect failed count
Bram Moolenaar <Bram@vim.org>
parents: 16955
diff changeset
8 let g:failed += a:match+0
16951
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
9 elseif a:type ==# 'skipped'
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
10 let g:skipped += 1
18184
ef35a3a70c24 patch 8.1.2087: cannot easily select one test function to execute
Bram Moolenaar <Bram@vim.org>
parents: 17901
diff changeset
11 call extend(g:skipped_output, ["\t" .. a:match])
16951
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
12 endif
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
13 endfunc
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
14
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
15 let g:executed = 0
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
16 let g:skipped = 0
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
17 let g:failed = 0
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
18 let g:skipped_output = []
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
19 let g:failed_output = []
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
20 let output = [""]
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
21
18184
ef35a3a70c24 patch 8.1.2087: cannot easily select one test function to execute
Bram Moolenaar <Bram@vim.org>
parents: 17901
diff changeset
22 if $TEST_FILTER != ''
ef35a3a70c24 patch 8.1.2087: cannot easily select one test function to execute
Bram Moolenaar <Bram@vim.org>
parents: 17901
diff changeset
23 call extend(g:skipped_output, ["\tAll tests not matching $TEST_FILTER: '" .. $TEST_FILTER .. "'"])
ef35a3a70c24 patch 8.1.2087: cannot easily select one test function to execute
Bram Moolenaar <Bram@vim.org>
parents: 17901
diff changeset
24 endif
ef35a3a70c24 patch 8.1.2087: cannot easily select one test function to execute
Bram Moolenaar <Bram@vim.org>
parents: 17901
diff changeset
25
16951
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
26 try
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
27 " This uses the :s command to just fetch and process the output of the
17901
14122cb0ea3d patch 8.1.1947: when executing one test the report doesn't show it
Bram Moolenaar <Bram@vim.org>
parents: 17793
diff changeset
28 " tests, it doesn't actually replace anything.
17793
7f95fa061abc patch 8.1.1893: script to summarize test results can be improved
Bram Moolenaar <Bram@vim.org>
parents: 16976
diff changeset
29 " And it uses "silent" to avoid reporting the number of matches.
17901
14122cb0ea3d patch 8.1.1947: when executing one test the report doesn't show it
Bram Moolenaar <Bram@vim.org>
parents: 17793
diff changeset
30 silent %s/^Executed\s\+\zs\d\+\ze\s\+tests\?/\=Count(submatch(0),'executed')/egn
17793
7f95fa061abc patch 8.1.1893: script to summarize test results can be improved
Bram Moolenaar <Bram@vim.org>
parents: 16976
diff changeset
31 silent %s/^SKIPPED \zs.*/\=Count(submatch(0), 'skipped')/egn
7f95fa061abc patch 8.1.1893: script to summarize test results can be improved
Bram Moolenaar <Bram@vim.org>
parents: 16976
diff changeset
32 silent %s/^\(\d\+\)\s\+FAILED:/\=Count(submatch(1), 'failed')/egn
16951
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
33
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
34 call extend(output, ["Skipped:"])
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
35 call extend(output, skipped_output)
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
36
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
37 call extend(output, [
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
38 \ "",
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
39 \ "-------------------------------",
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
40 \ printf("Executed: %5d Tests", g:executed),
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
41 \ printf(" Skipped: %5d Tests", g:skipped),
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
42 \ printf(" %s: %5d Tests", g:failed == 0 ? 'Failed' : 'FAILED', g:failed),
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
43 \ "",
17793
7f95fa061abc patch 8.1.1893: script to summarize test results can be improved
Bram Moolenaar <Bram@vim.org>
parents: 16976
diff changeset
44 \ ])
16951
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
45 if filereadable('test.log')
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
46 " outputs and indents the failed test result
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
47 call extend(output, ["", "Failures: "])
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
48 let failed_output = filter(readfile('test.log'), { v,k -> !empty(k)})
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
49 call extend(output, map(failed_output, { v,k -> "\t".k}))
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
50 " Add a final newline
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
51 call extend(output, [""])
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
52 endif
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
53
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
54 catch " Catch-all
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
55 finally
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
56 call writefile(output, 'test_result.log') " overwrites an existing file
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
57 endtry
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
58 endif
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
59
ebdf6cd89910 patch 8.1.1476: no statistics displayed after running tests
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
60 q!