|
17 | 17 | class TableErrorFormatterTest extends ErrorFormatterTestCase
|
18 | 18 | {
|
19 | 19 |
|
| 20 | + private string|false $terminalEmulator; |
| 21 | + |
20 | 22 | #[Override]
|
21 | 23 | protected function setUp(): void
|
22 | 24 | {
|
23 | 25 | putenv('GITHUB_ACTIONS');
|
| 26 | + |
| 27 | + $this->terminalEmulator = getenv('TERMINAL_EMULATOR'); |
| 28 | + putenv('TERMINAL_EMULATOR'); |
24 | 29 | }
|
25 | 30 |
|
26 | 31 | #[Override]
|
27 | 32 | protected function tearDown(): void
|
28 | 33 | {
|
29 | 34 | putenv('COLUMNS');
|
30 | 35 | putenv('TERM_PROGRAM');
|
| 36 | + putenv('TERMINAL_EMULATOR' . ($this->terminalEmulator !== false ? '=' . $this->terminalEmulator : '')); |
31 | 37 | }
|
32 | 38 |
|
33 | 39 | public static function dataFormatterOutputProvider(): iterable
|
@@ -226,6 +232,33 @@ public static function dataFormatterOutputProvider(): iterable
|
226 | 232 |
|
227 | 233 | [ERROR] Found 1 error
|
228 | 234 |
|
| 235 | +', |
| 236 | + ]; |
| 237 | + |
| 238 | + yield [ |
| 239 | + 'message' => 'Errors in JetBrains', |
| 240 | + 'exitCode' => 1, |
| 241 | + 'numFileErrors' => [5, 1], |
| 242 | + 'numGenericErrors' => 1, |
| 243 | + 'verbose' => true, |
| 244 | + 'extraEnvVars' => ['TERMINAL_EMULATOR=JetBrains-JediTerm'], |
| 245 | + 'expected' => ' ------ ---------------- |
| 246 | + Line foo.php |
| 247 | + ------ ---------------- |
| 248 | + 5 Foobar\Buz |
| 249 | + 🪪 foobar.buz |
| 250 | + 💡 a tip |
| 251 | + at foo.php:5 |
| 252 | + ------ ---------------- |
| 253 | +
|
| 254 | + -- --------------------- |
| 255 | + Error |
| 256 | + -- --------------------- |
| 257 | + first generic error |
| 258 | + -- --------------------- |
| 259 | +
|
| 260 | + [ERROR] Found 2 errors |
| 261 | +
|
229 | 262 | ',
|
230 | 263 | ];
|
231 | 264 | }
|
@@ -271,10 +304,6 @@ public function testEditorUrlWithTrait(): void
|
271 | 304 |
|
272 | 305 | public function testEditorUrlWithRelativePath(): void
|
273 | 306 | {
|
274 |
| - if (getenv('TERMINAL_EMULATOR') === 'JetBrains-JediTerm') { |
275 |
| - $this->markTestSkipped('PhpStorm console does not support links in console.'); |
276 |
| - } |
277 |
| - |
278 | 307 | $formatter = $this->createErrorFormatter('editor://custom/path/%relFile%/%line%');
|
279 | 308 | $error = new Error('Test', 'Foo.php', 12, filePath: self::DIRECTORY_PATH . '/rel/Foo.php');
|
280 | 309 | $formatter->formatErrors(new AnalysisResult([$error], [], [], [], [], false, null, true, 0, false, []), $this->getOutput(true));
|
|
0 commit comments