public function FileTest::testFile_validateFile in One Click Upload 7.2
* @covers ::validateFile
File
- flowphp/
test/ Unit/ FileTest.php, line 154
Class
- FileTest
- File unit tests
Namespace
UnitCode
public function testFile_validateFile() {
$this->requestArr['flowTotalSize'] = 10;
$this->requestArr['flowTotalChunks'] = 3;
$request = new Request($this->requestArr);
$file = new File($this->config, $request);
$chunkPrefix = sha1($request
->getIdentifier()) . '_';
// No chunks uploaded yet
$this
->assertFalse($file
->validateFile());
// First chunk
$firstChunk = vfsStream::newFile($chunkPrefix . '1');
$firstChunk
->setContent('123');
$this->vfs
->addChild($firstChunk);
// Uploaded not yet complete
$this
->assertFalse($file
->validateFile());
// Second chunk
$secondChunk = vfsStream::newFile($chunkPrefix . '2');
$secondChunk
->setContent('456');
$this->vfs
->addChild($secondChunk);
// Uploaded not yet complete
$this
->assertFalse($file
->validateFile());
// Third chunk
$lastChunk = vfsStream::newFile($chunkPrefix . '3');
$lastChunk
->setContent('7890');
$this->vfs
->addChild($lastChunk);
// All chunks uploaded
$this
->assertTrue($file
->validateFile());
//// Test false values
// File size doesn't match
$lastChunk
->setContent('789');
$this
->assertFalse($file
->validateFile());
// Correct file size and expect true
$this->requestArr['flowTotalSize'] = 9;
$this
->assertTrue($file
->validateFile());
}