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

Test LargeFileHelperGetFileSize also with ascii only characters

And skip the UTF8 names on Windows as they are not supported
parent 216ef617
No related branches found
No related tags found
No related merge requests found
......@@ -13,58 +13,77 @@ namespace Test;
* Large files are not considered yet.
*/
class LargeFileHelperGetFileSize extends \PHPUnit_Framework_TestCase {
protected $filename;
protected $fileSize;
/** @var \OC\LargeFileHelper */
protected $helper;
public function setUp() {
parent::setUp();
$ds = DIRECTORY_SEPARATOR;
$this->filename = dirname(__DIR__) . "{$ds}data{$ds}strängé filename (duplicate #2).txt";
$this->fileSize = 446;
$this->helper = new \OC\LargeFileHelper;
$this->helper = new \OC\LargeFileHelper();
}
public function testGetFileSizeViaCurl() {
public function dataFileNameProvider() {
$path = dirname(__DIR__) . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR;
$filePaths = array(array($path . 'lorem.txt', 446));
if (!\OC_Util::runningOnWindows()) {
$filePaths[] = array($path . 'strängé filename (duplicate #2).txt', 446);
}
return $filePaths;
}
/**
* @dataProvider dataFileNameProvider
*/
public function testGetFileSizeViaCurl($filename, $fileSize) {
if (!extension_loaded('curl')) {
$this->markTestSkipped(
'The PHP curl extension is required for this test.'
);
}
$this->assertSame(
$this->fileSize,
$this->helper->getFileSizeViaCurl($this->filename)
$fileSize,
$this->helper->getFileSizeViaCurl($filename)
);
}
public function testGetFileSizeViaCOM() {
/**
* @dataProvider dataFileNameProvider
*/
public function testGetFileSizeViaCOM($filename, $fileSize) {
if (!extension_loaded('COM')) {
$this->markTestSkipped(
'The PHP Windows COM extension is required for this test.'
);
}
$this->assertSame(
$this->fileSize,
$this->helper->getFileSizeViaCOM($this->filename)
$fileSize,
$this->helper->getFileSizeViaCOM($filename)
);
}
public function testGetFileSizeViaExec() {
/**
* @dataProvider dataFileNameProvider
*/
public function testGetFileSizeViaExec($filename, $fileSize) {
if (!\OC_Helper::is_function_enabled('exec')) {
$this->markTestSkipped(
'The exec() function needs to be enabled for this test.'
);
}
$this->assertSame(
$this->fileSize,
$this->helper->getFileSizeViaExec($this->filename)
$fileSize,
$this->helper->getFileSizeViaExec($filename)
);
}
public function testGetFileSizeNative() {
/**
* @dataProvider dataFileNameProvider
*/
public function testGetFileSizeNative($filename, $fileSize) {
$this->assertSame(
$this->fileSize,
$this->helper->getFileSizeNative($this->filename)
$fileSize,
$this->helper->getFileSizeNative($filename)
);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment