|
1 | 1 | import test from 'ava';
|
2 | 2 | import chalk from 'chalk';
|
3 | 3 | import {includes} from 'lodash';
|
4 |
| -import format from '.'; |
| 4 | +import format, {formatResult} from '.'; |
5 | 5 |
|
6 | 6 | const ok = chalk.bold(
|
7 | 7 | `${chalk.green(
|
@@ -144,3 +144,46 @@ test('uses signs as configured', t => {
|
144 | 144 | t.true(includes(actualError, 'ERR'));
|
145 | 145 | t.true(includes(actualWarning, 'WRN'));
|
146 | 146 | });
|
| 147 | + |
| 148 | +test('format result provides summary without arguments', t => { |
| 149 | + const actual = formatResult(); |
| 150 | + const actualText = actual.join('\n'); |
| 151 | + |
| 152 | + t.true(includes(actualText, '0 problems, 0 warnings')); |
| 153 | +}); |
| 154 | + |
| 155 | +test('format result transforms error to text', t => { |
| 156 | + const actual = formatResult({ |
| 157 | + errors: [ |
| 158 | + { |
| 159 | + level: 2, |
| 160 | + name: 'error-name', |
| 161 | + message: 'There was an error' |
| 162 | + } |
| 163 | + ] |
| 164 | + }); |
| 165 | + |
| 166 | + const actualText = actual.join('\n'); |
| 167 | + |
| 168 | + t.true(includes(actualText, 'error-name')); |
| 169 | + t.true(includes(actualText, 'There was an error')); |
| 170 | + t.true(includes(actualText, '1 problems, 0 warnings')); |
| 171 | +}); |
| 172 | + |
| 173 | +test('format result transforms warning to text', t => { |
| 174 | + const actual = formatResult({ |
| 175 | + warnings: [ |
| 176 | + { |
| 177 | + level: 1, |
| 178 | + name: 'warning-name', |
| 179 | + message: 'There was a warning' |
| 180 | + } |
| 181 | + ] |
| 182 | + }); |
| 183 | + |
| 184 | + const actualText = actual.join('\n'); |
| 185 | + |
| 186 | + t.true(includes(actualText, 'warning-name')); |
| 187 | + t.true(includes(actualText, 'There was a warning')); |
| 188 | + t.true(includes(actualText, '0 problems, 1 warnings')); |
| 189 | +}); |
0 commit comments