0
0
Fork 0
mirror of https://github.com/nextcloud/server.git synced 2025-01-31 06:43:12 +00:00
nextcloud_server/tests/lib/Files/SimpleFS/InMemoryFileTest.php
Christoph Wurst 49dd79eabb
refactor: Add void return type to PHPUnit test methods
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-09-15 22:32:31 +02:00

131 lines
2.7 KiB
PHP

<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-only
*/
namespace Test\File\SimpleFS;
use OCP\Files\NotPermittedException;
use OCP\Files\SimpleFS\InMemoryFile;
use Test\TestCase;
/**
* This class provide test casesf or the InMemoryFile.
*
* @package Test\File\SimpleFS
*/
class InMemoryFileTest extends TestCase {
/**
* Holds a pdf file with know attributes for tests.
*
* @var InMemoryFile
*/
private $testPdf;
/**
* Sets the test file from "./resources/test.pdf".
*
* @before
* @return void
*/
public function setupTestPdf() {
$fileContents = file_get_contents(
__DIR__ . '/../../../data/test.pdf'
);
$this->testPdf = new InMemoryFile('test.pdf', $fileContents);
}
/**
* Asserts that putContent replaces the file contents.
*
* @return void
*/
public function testPutContent(): void {
$this->testPdf->putContent('test');
self::assertEquals('test', $this->testPdf->getContent());
}
/**
* Asserts that delete() doesn't rise an exception.
*
* @return void
*/
public function testDelete(): void {
$this->testPdf->delete();
// assert true, otherwise phpunit complains about not doing any assert
self::assertTrue(true);
}
/**
* Asserts that getName returns the name passed on file creation.
*
* @return void
*/
public function testGetName(): void {
self::assertEquals('test.pdf', $this->testPdf->getName());
}
/**
* Asserts that the file size is the size of the test file.
*
* @return void
*/
public function testGetSize(): void {
self::assertEquals(7083, $this->testPdf->getSize());
}
/**
* Asserts the file contents are the same than the original file contents.
*
* @return void
*/
public function testGetContent(): void {
self::assertEquals(
file_get_contents(__DIR__ . '/../../../data/test.pdf'),
$this->testPdf->getContent()
);
}
/**
* Asserts the test file modification time is an integer.
*
* @return void
*/
public function testGetMTime(): void {
self::assertTrue(is_int($this->testPdf->getMTime()));
}
/**
* Asserts the test file mime type is "application/json".
*
* @return void
*/
public function testGetMimeType(): void {
self::assertEquals('application/pdf', $this->testPdf->getMimeType());
}
/**
* Asserts that read() raises an NotPermittedException.
*
* @return void
*/
public function testRead(): void {
self::expectException(NotPermittedException::class);
$this->testPdf->read();
}
/**
* Asserts that write() raises an NotPermittedException.
*
* @return void
*/
public function testWrite(): void {
self::expectException(NotPermittedException::class);
$this->testPdf->write();
}
}