Skip to content
Snippets Groups Projects
Unverified Commit 6ad7e757 authored by Joas Schilling's avatar Joas Schilling
Browse files

Update the unit test to dataProviders

parent 4a151c54
No related branches found
No related tags found
No related merge requests found
...@@ -39,61 +39,96 @@ class DetectionTest extends \Test\TestCase { ...@@ -39,61 +39,96 @@ class DetectionTest extends \Test\TestCase {
); );
} }
public function testDetect() { public function dataDetectPath(): array {
$dir = \OC::$SERVERROOT.'/tests/data'; return [
['foo.txt', 'text/plain'],
['foo.png', 'image/png'],
['foo.bar.png', 'image/png'],
['.hidden.png', 'image/png'],
['.hidden.foo.png', 'image/png'],
['.hidden/foo.png', 'image/png'],
['.hidden/.hidden.png', 'image/png'],
['test.jpg/foo.png', 'image/png'],
['.png', 'application/octet-stream'],
['..hidden', 'application/octet-stream'],
['foo', 'application/octet-stream'],
['', 'application/octet-stream'],
['foo.png.ocTransferId123456789.part', 'image/png'],
['foo.png.v1234567890', 'image/png'],
];
}
$result = $this->detection->detect($dir."/"); /**
$expected = 'httpd/unix-directory'; * @dataProvider dataDetectPath
$this->assertEquals($expected, $result); *
* @param string $path
* @param string $expected
*/
public function testDetectPath(string $path, string $expected): void {
$this->assertEquals($expected, $this->detection->detectPath($path));
}
$result = $this->detection->detect($dir."/data.tar.gz"); public function dataDetectContent(): array {
$expected = 'application/x-gzip'; return [
$this->assertEquals($expected, $result); ['/', 'httpd/unix-directory'],
['/data.tar.gz', 'application/x-gzip'],
['/data.zip', 'application/zip'],
['/testimage.mp3', 'audio/mpeg'],
['/testimage.png', 'image/png'],
];
}
$result = $this->detection->detect($dir."/data.zip"); /**
$expected = 'application/zip'; * @dataProvider dataDetectContent
$this->assertEquals($expected, $result); *
* @param string $path
* @param string $expected
*/
public function testDetectContent(string $path, string $expected): void {
$this->assertEquals($expected, $this->detection->detectContent(\OC::$SERVERROOT . '/tests/data' . $path));
}
$result = $this->detection->detect($dir."/testimagelarge.svg"); public function dataDetect(): array {
$expected = 'image/svg+xml'; return [
$this->assertEquals($expected, $result); ['/', 'httpd/unix-directory'],
['/data.tar.gz', 'application/x-gzip'],
['/data.zip', 'application/zip'],
['/testimagelarge.svg', 'image/svg+xml'],
['/testimage.png', 'image/png'],
];
}
$result = $this->detection->detect($dir."/testimage.png"); /**
$expected = 'image/png'; * @dataProvider dataDetect
$this->assertEquals($expected, $result); *
* @param string $path
* @param string $expected
*/
public function testDetect(string $path, string $expected): void {
$this->assertEquals($expected, $this->detection->detect(\OC::$SERVERROOT . '/tests/data' . $path));
} }
public function testGetSecureMimeType() { public function testDetectString(): void {
$result = $this->detection->getSecureMimeType('image/svg+xml'); $result = $this->detection->detectString('/data/data.tar.gz');
$expected = 'text/plain'; $expected = 'text/plain';
$this->assertEquals($expected, $result); $this->assertEquals($expected, $result);
$result = $this->detection->getSecureMimeType('image/png');
$expected = 'image/png';
$this->assertEquals($expected, $result);
} }
public function testDetectPath() { public function dataGetSecureMimeType(): array {
$this->assertEquals('text/plain', $this->detection->detectPath('foo.txt')); return [
$this->assertEquals('image/png', $this->detection->detectPath('foo.png')); ['image/svg+xml', 'text/plain'],
$this->assertEquals('image/png', $this->detection->detectPath('foo.bar.png')); ['image/png', 'image/png'],
$this->assertEquals('image/png', $this->detection->detectPath('.hidden.png')); ];
$this->assertEquals('image/png', $this->detection->detectPath('.hidden.foo.png'));
$this->assertEquals('image/png', $this->detection->detectPath('.hidden/foo.png'));
$this->assertEquals('image/png', $this->detection->detectPath('.hidden/.hidden.png'));
$this->assertEquals('image/png', $this->detection->detectPath('test.jpg/foo.png'));
$this->assertEquals('application/octet-stream', $this->detection->detectPath('.png'));
$this->assertEquals('application/octet-stream', $this->detection->detectPath('..hidden'));
$this->assertEquals('application/octet-stream', $this->detection->detectPath('foo'));
$this->assertEquals('application/octet-stream', $this->detection->detectPath(''));
$this->assertEquals('image/png', $this->detection->detectPath('foo.png.ocTransferId123456789.part'));
$this->assertEquals('image/png', $this->detection->detectPath('foo.png.v1234567890'));
} }
public function testDetectString() { /**
$result = $this->detection->detectString("/data/data.tar.gz"); * @dataProvider dataGetSecureMimeType
$expected = 'text/plain'; *
$this->assertEquals($expected, $result); * @param string $mimeType
* @param string $expected
*/
public function testGetSecureMimeType(string $mimeType, string $expected): void {
$this->assertEquals($expected, $this->detection->getSecureMimeType($mimeType));
} }
public function testMimeTypeIcon() { public function testMimeTypeIcon() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment