function it_normalizes_a_file_for_versioning(FileInterface $file)
 {
     $file->getKey()->willReturn('key/of/file.txt');
     $file->getOriginalFilename()->willReturn('the file.txt');
     $file->getHash()->willReturn('98s7qf987a6f4sdqf');
     $this->normalize($file)->shouldReturn(['filePath' => 'key/of/file.txt', 'originalFilename' => 'the file.txt', 'hash' => '98s7qf987a6f4sdqf']);
 }
 function it_normalizes_media(FileInterface $file)
 {
     $file->getKey()->willReturn('key/of/the/file.pdf');
     $file->getOriginalFilename()->willReturn('myfile.pdf');
     $file->getId()->willReturn(152);
     $this->normalize($file, 'mongodb_json', [])->shouldReturn(['id' => 152, 'key' => 'key/of/the/file.pdf', 'originalFilename' => 'myfile.pdf']);
 }
 /**
  * Validate if file size is allowed.
  *
  * @param FileInterface $file
  * @param Constraint    $constraint
  */
 protected function validateFileSize(FileInterface $file, Constraint $constraint)
 {
     // comes from Symfony\Component\Validator\Constraints\FileValidator
     if ($constraint->maxSize) {
         $limitInBytes = $constraint->maxSize;
         if ($file->getSize() > $limitInBytes) {
             $factorizeSizes = $this->factorizeSizes($file->getSize(), $limitInBytes, $constraint->binaryFormat);
             list($sizeAsString, $limitAsString, $suffix) = $factorizeSizes;
             $this->context->buildViolation($constraint->maxSizeMessage)->setParameter('{{ file }}', $this->formatValue($file->getOriginalFilename()))->setParameter('{{ size }}', $sizeAsString)->setParameter('{{ limit }}', $limitAsString)->setParameter('{{ suffix }}', $suffix)->setCode(File::TOO_LARGE_ERROR)->addViolation();
             return;
         }
     }
 }
 function it_does_not_validate_size($context, File $constraint, FileInterface $file, ConstraintViolationBuilderInterface $violation)
 {
     $constraint->maxSize = '1M';
     $file->getId()->willReturn(12);
     $file->getUploadedFile()->willReturn(null);
     $file->getExtension()->willReturn('jpg');
     $file->getSize()->willReturn(1075200);
     $file->getOriginalFilename()->willReturn('my file.jpg');
     $context->buildViolation($constraint->maxSizeMessage)->shouldBeCalled()->willReturn($violation);
     $violation->setParameter('{{ file }}', Argument::any())->shouldBeCalled()->willReturn($violation);
     $violation->setParameter('{{ size }}', Argument::any())->shouldBeCalled()->willReturn($violation);
     $violation->setParameter('{{ limit }}', Argument::any())->shouldBeCalled()->willReturn($violation);
     $violation->setParameter('{{ suffix }}', Argument::any())->shouldBeCalled()->willReturn($violation);
     $violation->setCode(Argument::any())->shouldBeCalled()->willReturn($violation);
     $violation->addViolation()->shouldBeCalled();
     $this->validate($file, $constraint);
 }
 function it_normalizes_a_file(FileInterface $file)
 {
     $file->getKey()->willReturn('key/of/file.txt');
     $file->getOriginalFilename()->willReturn('original file name.txt');
     $this->normalize($file, Argument::cetera())->shouldReturn(['filePath' => 'key/of/file.txt', 'originalFilename' => 'original file name.txt']);
 }