'aCV.txt', 'type' => 'application/octet-stream', 'tmp_name' => '/private/var/tmp/phpzTQbqP', 'error' => 0, 'size' => 3471 ); $fileField->setValue($fileFieldValue); $this->assertTrue($form->validationResult()->isValid()); } /** * Test different scenarii for a failed upload : an error occured, no files where provided * @skipUpgrade */ public function testUploadMissingRequiredFile() { $form = new Form( Controller::curr(), 'Form', new FieldList( $fileField = new FileField('cv', 'Upload your CV') ), new FieldList(), new RequiredFields('cv') ); // All fields are filled but for some reason an error occured when uploading the file => fails $fileFieldValue = array( 'name' => 'aCV.txt', 'type' => 'application/octet-stream', 'tmp_name' => '/private/var/tmp/phpzTQbqP', 'error' => 1, 'size' => 3471 ); $fileField->setValue($fileFieldValue); $this->assertFalse( $form->validationResult()->isValid(), 'An error occured when uploading a file, but the validator returned true' ); // We pass an empty set of parameters for the uploaded file => fails $fileFieldValue = array(); $fileField->setValue($fileFieldValue); $this->assertFalse( $form->validationResult()->isValid(), 'An empty array was passed as parameter for an uploaded file, but the validator returned true' ); // We pass an null value for the uploaded file => fails $fileFieldValue = null; $fileField->setValue($fileFieldValue); $this->assertFalse( $form->validationResult()->isValid(), 'A null value was passed as parameter for an uploaded file, but the validator returned true' ); } }