Don't use only_compiler_types, assume ghc
[packages/hpc.git] / tests / simple / tixs / test.T
1 setTestOpts([omit_ways(['ghci']), when(fast(), skip)])
2
3 test('hpc_help', normal, run_command, ["{hpc} help"])
4 test('hpc_help_help', normal, run_command, ["{hpc} help help"])
5
6 test('hpc_help_report', normal, run_command, ["{hpc} help report"])
7 test('hpc_report_001', normal, run_command,
8      ["{hpc} report hpc_sample.tix --xml-output"])
9 test('hpc_report_002', normal, run_command,
10      ["{hpc} report hpc_sample.tix --xml-output --per-module"])
11 test('hpc_report_003', normal, run_command,
12      ["{hpc} report hpc_sample.tix --per-module --decl-list"])
13 test('hpc_report_error_001', exit_code(1), run_command,
14      ["{hpc} report"]) # no .tix file
15 test('hpc_report_error_002', exit_code(1), run_command,
16      ["{hpc} report hpc001.hs"]) # bad .tix file
17
18 test('hpc_help_markup', normal, run_command, ["{hpc} help markup"])
19 test('hpc_markup_error_001', exit_code(1), run_command,
20      ["{hpc} markup"]) # no .tix file
21 test('hpc_markup_error_002', exit_code(1), run_command,
22      ["{hpc} markup hpc001.hs"]) # bad .tix file
23 test('hpc_markup_001', extra_clean(['markup_001/*']), run_command,
24      ["{hpc} markup --verbosity=0 --destdir=markup_001"
25       " hpc_sample.tix --highlight-covered; cat markup_001/Main.hs.html"])
26 test('hpc_markup_002', extra_clean(['markup_002/*']), run_command,
27      ["{hpc} markup --verbosity=0 --destdir=markup_002"
28       " hpc_sample.tix --fun-entry-count; cat markup_002/Main.hs.html"])
29
30 test('hpc_help_show', normal, run_command, ["{hpc} help show"])
31 test('hpc_show', normal, run_command, ["{hpc} show hpc_sample.tix"])
32 test('hpc_show_error_001', exit_code(1), run_command,
33      ["{hpc} show"]) # no .tix file
34 test('hpc_show_error_002', exit_code(1), run_command,
35      ["{hpc} show hpc001.hs"]) # bad .tix file
36
37 test('hpc_help_version', normal, run_command, ["{hpc} help version"])
38 test('hpc_version', normal, run_command, ["{hpc} version"])
39
40 test('hpc_help_draft', normal, run_command, ["{hpc} help draft"])
41 test('hpc_draft', normal, run_command, ["{hpc} draft hpc_sample.tix"])
42
43 test('hpc_help_overlay', normal, run_command, ["{hpc} help overlay"])
44
45 test('hpc_overlay',
46      [extra_clean(['sample_overlay1.tix', 'total1.tix'])],
47      run_command,
48      ["({hpc} overlay sample_overlay.ovr > sample_overlay1.tix; "
49       "cat sample_overlay1.tix; echo; "
50       "{hpc} combine hpc_sample.tix sample_overlay1.tix > total1.tix; "
51       "{hpc} report total1.tix)"])
52
53 test('hpc_overlay2',
54      [extra_clean(['sample_overlay2.tix', 'total2.tix'])],
55      run_command,
56      ["({hpc} overlay sample_overlay.ovr --output=sample_overlay2.tix; "
57       "cat sample_overlay2.tix; echo; "
58       "{hpc} combine hpc_sample.tix sample_overlay2.tix --output=total2.tix; "
59       "{hpc} report total2.tix)"])
60
61 test('hpc_hand_overlay',
62      [extra_clean(['sample_overlay3.tix', 'total3.tix'])],
63      run_command,
64      ["({hpc} overlay hand_overlay.ovr --output=sample_overlay3.tix; "
65       "cat sample_overlay3.tix; echo; "
66       "{hpc} combine hpc_sample.tix sample_overlay3.tix --output=total3.tix; "
67       "{hpc} report total3.tix)"])
68
69 test('hpc_bad_001', exit_code(1), run_command, ["{hpc} bad arguments"])
70
71 test('T9619', ignore_output, run_command,
72      # Having the same mix file in two different hpcdirs should work.
73      ["{hpc} report hpc_sample.tix --hpcdir=.hpc --hpcdir=.hpc.copy"])
74
75 # Show different error messages for different types of failures.
76 test('T10529a', exit_code(1), run_command,
77      ["{hpc} report hpc_sample_non_existing_module.tix"])
78 test('T10529b', exit_code(1), run_command,
79      ["{hpc} report hpc_sample_incompatible_hash.tix"])
80 test('T10529c', exit_code(1), run_command,
81      ["{hpc} report hpc_sample_no_parse.tix"])