Branch Coverage

lib/Eshu.xs
Criterion Covered Total %
branch 198 366 54.1


line true false branch
30 67 0 if (SvOK(filename_sv)) {
36 217 1 while (p > filename) {
38 66 151 if (*p == '.') { dot = p + 1; break; }
41 66 1 if (dot) {
43 13 53 if ((ext_len == 1 && (dot[0] == 'c' || dot[0] == 'C'))
2 11 if ((ext_len == 1 && (dot[0] == 'c' || dot[0] == 'C'))
2 0 if ((ext_len == 1 && (dot[0] == 'c' || dot[0] == 'C'))
44 2 53 || (ext_len == 1 && (dot[0] == 'h' || dot[0] == 'H'))) {
1 1 || (ext_len == 1 && (dot[0] == 'h' || dot[0] == 'H'))) {
0 1 || (ext_len == 1 && (dot[0] == 'h' || dot[0] == 'H'))) {
46 36 18 } else if (ext_len == 2
47 35 1 && (dot[0] == 'x' || dot[0] == 'X')
0 35 && (dot[0] == 'x' || dot[0] == 'X')
48 0 1 && (dot[1] == 's' || dot[1] == 'S')) {
0 0 && (dot[1] == 's' || dot[1] == 'S')) {
50 35 18 } else if ((ext_len == 2
51 2 33 && (dot[0] == 'p' || dot[0] == 'P')
0 2 && (dot[0] == 'p' || dot[0] == 'P')
52 27 6 && (dot[1] == 'l' || dot[1] == 'L'))
27 0 && (dot[1] == 'l' || dot[1] == 'L'))
53 29 18 || (ext_len == 2
54 2 27 && (dot[0] == 'p' || dot[0] == 'P')
0 2 && (dot[0] == 'p' || dot[0] == 'P')
55 0 27 && (dot[1] == 'm' || dot[1] == 'M'))
0 0 && (dot[1] == 'm' || dot[1] == 'M'))
56 1 19 || (ext_len == 1
57 0 1 && (dot[0] == 't' || dot[0] == 'T'))) {
0 0 && (dot[0] == 't' || dot[0] == 'T'))) {
59 11 8 } else if ((ext_len == 3
60 8 3 && (dot[0] == 'x' || dot[0] == 'X')
0 8 && (dot[0] == 'x' || dot[0] == 'X')
61 1 2 && (dot[1] == 'm' || dot[1] == 'M')
0 1 && (dot[1] == 'm' || dot[1] == 'M')
62 0 2 && (dot[2] == 'l' || dot[2] == 'L'))
0 0 && (dot[2] == 'l' || dot[2] == 'L'))
63 9 8 || (ext_len == 3
64 8 1 && (dot[0] == 'x' || dot[0] == 'X')
0 8 && (dot[0] == 'x' || dot[0] == 'X')
65 0 1 && (dot[1] == 's' || dot[1] == 'S')
0 0 && (dot[1] == 's' || dot[1] == 'S')
66 0 1 && (dot[2] == 'l' || dot[2] == 'L'))
0 0 && (dot[2] == 'l' || dot[2] == 'L'))
67 5 11 || (ext_len == 4
68 4 1 && (dot[0] == 'x' || dot[0] == 'X')
0 4 && (dot[0] == 'x' || dot[0] == 'X')
69 0 1 && (dot[1] == 's' || dot[1] == 'S')
0 0 && (dot[1] == 's' || dot[1] == 'S')
70 0 1 && (dot[2] == 'l' || dot[2] == 'L')
0 0 && (dot[2] == 'l' || dot[2] == 'L')
71 0 1 && (dot[3] == 't' || dot[3] == 'T'))
0 0 && (dot[3] == 't' || dot[3] == 'T'))
72 8 7 || (ext_len == 3
73 7 1 && (dot[0] == 's' || dot[0] == 'S')
0 7 && (dot[0] == 's' || dot[0] == 'S')
74 0 1 && (dot[1] == 'v' || dot[1] == 'V')
0 0 && (dot[1] == 'v' || dot[1] == 'V')
75 0 1 && (dot[2] == 'g' || dot[2] == 'G'))
0 0 && (dot[2] == 'g' || dot[2] == 'G'))
76 1 13 || (ext_len == 5
77 0 1 && (dot[0] == 'x' || dot[0] == 'X')
0 0 && (dot[0] == 'x' || dot[0] == 'X')
78 0 1 && (dot[1] == 'h' || dot[1] == 'H')
0 0 && (dot[1] == 'h' || dot[1] == 'H')
79 0 1 && (dot[2] == 't' || dot[2] == 'T')
0 0 && (dot[2] == 't' || dot[2] == 'T')
80 0 1 && (dot[3] == 'm' || dot[3] == 'M')
0 0 && (dot[3] == 'm' || dot[3] == 'M')
81 0 1 && (dot[4] == 'l' || dot[4] == 'L'))) {
0 0 && (dot[4] == 'l' || dot[4] == 'L'))) {
83 4 9 } else if ((ext_len == 4
84 3 1 && (dot[0] == 'h' || dot[0] == 'H')
0 3 && (dot[0] == 'h' || dot[0] == 'H')
85 0 1 && (dot[1] == 't' || dot[1] == 'T')
0 0 && (dot[1] == 't' || dot[1] == 'T')
86 0 1 && (dot[2] == 'm' || dot[2] == 'M')
0 0 && (dot[2] == 'm' || dot[2] == 'M')
87 0 1 && (dot[3] == 'l' || dot[3] == 'L'))
0 0 && (dot[3] == 'l' || dot[3] == 'L'))
88 7 5 || (ext_len == 3
89 6 1 && (dot[0] == 'h' || dot[0] == 'H')
0 6 && (dot[0] == 'h' || dot[0] == 'H')
90 0 1 && (dot[1] == 't' || dot[1] == 'T')
0 0 && (dot[1] == 't' || dot[1] == 'T')
91 0 1 && (dot[2] == 'm' || dot[2] == 'M'))
0 0 && (dot[2] == 'm' || dot[2] == 'M'))
92 3 8 || (ext_len == 4
93 2 1 && (dot[0] == 't' || dot[0] == 'T')
0 2 && (dot[0] == 't' || dot[0] == 'T')
94 0 1 && (dot[1] == 'm' || dot[1] == 'M')
0 0 && (dot[1] == 'm' || dot[1] == 'M')
95 0 1 && (dot[2] == 'p' || dot[2] == 'P')
0 0 && (dot[2] == 'p' || dot[2] == 'P')
96 0 1 && (dot[3] == 'l' || dot[3] == 'L'))
0 0 && (dot[3] == 'l' || dot[3] == 'L'))
97 2 8 || (ext_len == 2
98 1 1 && (dot[0] == 't' || dot[0] == 'T')
0 1 && (dot[0] == 't' || dot[0] == 'T')
99 0 1 && (dot[1] == 't' || dot[1] == 'T'))
0 0 && (dot[1] == 't' || dot[1] == 'T'))
100 1 8 || (ext_len == 2
101 0 1 && (dot[0] == 'e' || dot[0] == 'E')
0 0 && (dot[0] == 'e' || dot[0] == 'E')
102 0 1 && (dot[1] == 'p' || dot[1] == 'P'))) {
0 0 && (dot[1] == 'p' || dot[1] == 'P'))) {
104 6 2 } else if ((ext_len == 3
105 4 2 && (dot[0] == 'c' || dot[0] == 'C')
1 3 && (dot[0] == 'c' || dot[0] == 'C')
106 1 2 && (dot[1] == 's' || dot[1] == 'S')
1 0 && (dot[1] == 's' || dot[1] == 'S')
107 1 2 && (dot[2] == 's' || dot[2] == 'S'))
0 1 && (dot[2] == 's' || dot[2] == 'S'))
108 2 3 || (ext_len == 4
109 1 1 && (dot[0] == 's' || dot[0] == 'S')
0 1 && (dot[0] == 's' || dot[0] == 'S')
110 0 1 && (dot[1] == 'c' || dot[1] == 'C')
0 0 && (dot[1] == 'c' || dot[1] == 'C')
111 0 1 && (dot[2] == 's' || dot[2] == 'S')
0 0 && (dot[2] == 's' || dot[2] == 'S')
112 0 1 && (dot[3] == 's' || dot[3] == 'S'))
0 0 && (dot[3] == 's' || dot[3] == 'S'))
113 1 3 || (ext_len == 4
114 0 1 && (dot[0] == 'l' || dot[0] == 'L')
0 0 && (dot[0] == 'l' || dot[0] == 'L')
115 0 1 && (dot[1] == 'e' || dot[1] == 'E')
0 0 && (dot[1] == 'e' || dot[1] == 'E')
116 0 1 && (dot[2] == 's' || dot[2] == 'S')
0 0 && (dot[2] == 's' || dot[2] == 'S')
117 0 1 && (dot[3] == 's' || dot[3] == 'S'))) {
0 0 && (dot[3] == 's' || dot[3] == 'S'))) {
143 7 59 for (i = 2; i + 1 < items; i += 2) {
146 1 6 if (strEQ(key, "indent_char")) {
148 1 0 cfg.indent_char = (*ic == ' ') ? ' ' : '\t';
149 1 5 } else if (strEQ(key, "indent_width")) {
151 1 4 } else if (strEQ(key, "indent_pp")) {
153 2 2 } else if (strEQ(key, "range_start")) {
155 2 0 } else if (strEQ(key, "range_end")) {
185 4 69 for (i = 2; i + 1 < items; i += 2) {
188 1 3 if (strEQ(key, "indent_char")) {
190 1 0 cfg.indent_char = (*ic == ' ') ? ' ' : '\t';
191 1 2 } else if (strEQ(key, "indent_width")) {
193 1 1 } else if (strEQ(key, "range_start")) {
195 1 0 } else if (strEQ(key, "range_end")) {
225 0 32 for (i = 2; i + 1 < items; i += 2) {
228 0 0 if (strEQ(key, "indent_char")) {
230 0 0 cfg.indent_char = (*ic == ' ') ? ' ' : '\t';
231 0 0 } else if (strEQ(key, "indent_width")) {
233 0 0 } else if (strEQ(key, "indent_pp")) {
235 0 0 } else if (strEQ(key, "range_start")) {
237 0 0 } else if (strEQ(key, "range_end")) {
267 10 32 for (i = 2; i + 1 < items; i += 2) {
270 1 9 if (strEQ(key, "indent_char")) {
272 1 0 cfg.indent_char = (*ic == ' ') ? ' ' : '\t';
273 1 8 } else if (strEQ(key, "indent_width")) {
275 8 0 } else if (strEQ(key, "lang")) {
277 0 8 if (strEQ(l, "html") || strEQ(l, "htm")) {
0 0 if (strEQ(l, "html") || strEQ(l, "htm")) {
280 0 0 } else if (strEQ(key, "range_start")) {
282 0 0 } else if (strEQ(key, "range_end")) {
312 2 29 for (i = 2; i + 1 < items; i += 2) {
315 1 1 if (strEQ(key, "indent_char")) {
317 1 0 cfg.indent_char = (*ic == ' ') ? ' ' : '\t';
318 1 0 } else if (strEQ(key, "indent_width")) {
320 0 0 } else if (strEQ(key, "range_start")) {
322 0 0 } else if (strEQ(key, "range_end")) {
352 54 50 for (i = 2; i + 1 < items; i += 2) {
355 50 4 if (strEQ(key, "lang")) {
357 2 2 } else if (strEQ(key, "indent_char")) {
359 1 1 cfg.indent_char = (*ic == ' ') ? ' ' : '\t';
360 2 0 } else if (strEQ(key, "indent_width")) {
362 0 0 } else if (strEQ(key, "indent_pp")) {
364 0 0 } else if (strEQ(key, "range_start")) {
366 0 0 } else if (strEQ(key, "range_end")) {
371 13 37 if (strEQ(lang, "c")) {
373 6 31 } else if (strEQ(lang, "perl") || strEQ(lang, "pl")) {
0 6 } else if (strEQ(lang, "perl") || strEQ(lang, "pl")) {
376 1 5 } else if (strEQ(lang, "xs")) {
379 3 2 } else if (strEQ(lang, "xml") || strEQ(lang, "svg")) {
0 3 } else if (strEQ(lang, "xml") || strEQ(lang, "svg")) {
382 2 1 } else if (strEQ(lang, "html") || strEQ(lang, "htm")) {
0 2 } else if (strEQ(lang, "html") || strEQ(lang, "htm")) {
385 0 2 } else if (strEQ(lang, "css") || strEQ(lang, "scss") || strEQ(lang, "less")) {
0 0 } else if (strEQ(lang, "css") || strEQ(lang, "scss") || strEQ(lang, "less")) {
0 0 } else if (strEQ(lang, "css") || strEQ(lang, "scss") || strEQ(lang, "less")) {