Completed
Push — master ( 0136c1...94aca9 )
by Lukas Kahwe
03:29
created

SimpleMimeTypeGuesserTest   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Importance

Changes 0
Metric Value
dl 0
loc 35
c 0
b 0
f 0
wmc 4
lcom 0
cbo 3
rs 10
1
<?php
2
3
namespace Liip\ImagineBundle\Tests\Binary;
4
5
use Liip\ImagineBundle\Binary\SimpleMimeTypeGuesser;
6
use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesser;
7
8
/**
9
 * @covers Liip\ImagineBundle\Binary\SimpleMimeTypeGuesser<extended>
10
 */
11
class SimpleMimeTypeGuesserTest extends \PHPUnit_Framework_TestCase
12
{
13
    public function provideImages()
14
    {
15
        return array(
16
            'gif' => array(__DIR__.'/../Fixtures/assets/cats.gif', 'image/gif'),
17
            'png' => array(__DIR__.'/../Fixtures/assets/cats.png', 'image/png'),
18
            'jpg' => array(__DIR__.'/../Fixtures/assets/cats.jpeg', 'image/jpeg'),
19
            'pdf' => array(__DIR__.'/../Fixtures/assets/cats.pdf', 'application/pdf'),
20
            'txt' => array(__DIR__.'/../Fixtures/assets/cats.txt', 'text/plain'),
21
        );
22
    }
23
24
    public function testImplementsMimeTypeGuesserInterface()
25
    {
26
        $rc = new \ReflectionClass('Liip\ImagineBundle\Binary\SimpleMimeTypeGuesser');
27
28
        $this->assertTrue($rc->implementsInterface('Liip\ImagineBundle\Binary\MimeTypeGuesserInterface'));
29
    }
30
31
    public function testCouldBeConstructedWithSymfonyMimeTypeGuesserAsFirstArgument()
32
    {
33
        new SimpleMimeTypeGuesser(MimeTypeGuesser::getInstance());
34
    }
35
36
    /**
37
     * @dataProvider provideImages
38
     */
39
    public function testGuessMimeType($imageFile, $expectedMimeType)
40
    {
41
        $guesser = new SimpleMimeTypeGuesser(MimeTypeGuesser::getInstance());
42
43
        $this->assertEquals($expectedMimeType, $guesser->guess(file_get_contents($imageFile)));
44
    }
45
}
46