Skip to content

Commit 212ef00

Browse files
committed
Add tests for File\* classes
1 parent 5e0aa1a commit 212ef00

File tree

2 files changed

+38
-1
lines changed

2 files changed

+38
-1
lines changed

tests/FileTest.php

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace CodeLts\CliTools\Tests;
6+
7+
use CodeLts\CliTools\File\CouldNotReadFileException;
8+
use CodeLts\CliTools\File\CouldNotWriteFileException;
9+
use CodeLts\CliTools\File\FileReader;
10+
use CodeLts\CliTools\File\FileWriter;
11+
12+
class FileTest extends AbstractTestCase
13+
{
14+
public function testReadWriteFile(): void
15+
{
16+
$fileName = tempnam(sys_get_temp_dir(), 'code-lts-cli-tools');
17+
FileWriter::write(
18+
$fileName,
19+
'foobar'
20+
);
21+
$this->assertSame('foobar', FileReader::read($fileName));
22+
unlink($fileName);
23+
}
24+
25+
public function testReadInvalidFile(): void
26+
{
27+
$this->expectException(CouldNotReadFileException::class);
28+
$this->expectExceptionMessage('Could not read file: /');
29+
$this->assertSame('foobar', FileReader::read('/'));
30+
}
31+
32+
public function testWriteInvalidFile(): void
33+
{
34+
$this->expectException(CouldNotWriteFileException::class);
35+
$this->expectExceptionMessage('Could not write file: / (file_put_contents(/): failed to open stream: Is a directory)');
36+
$this->assertSame('foobar', FileWriter::write('/', ''));
37+
}
38+
}

tests/OutputFormatTest.php

-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
namespace CodeLts\CliTools\Tests;
66

7-
use CodeLts\CliTools\AnalysisResult;
87
use CodeLts\CliTools\ErrorFormatter\ErrorFormatter;
98
use CodeLts\CliTools\File\NullRelativePathHelper;
109
use CodeLts\CliTools\OutputFormat;

0 commit comments

Comments
 (0)