test_srcset_empty_on_construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 5
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 3
nc 1
nop 0
1
<?php
2
3
namespace Brendt\Image\Tests\Phpunit;
4
5
use Brendt\Image\ResponsiveImage;
6
7
class ResponsiveImageTest extends \PHPUnit_Framework_TestCase
8
{
9
10
    public function test_construct() {
11
        new ResponsiveImage('img/image.jpeg');
12
    }
13
14
    public function test_src() {
15
        $image = new ResponsiveImage('img/image.jpeg');
16
17
        $this->assertEquals('/img/image.jpeg', $image->src());
18
    }
19
20
    public function test_src_with_slash() {
21
        $image = new ResponsiveImage('/img/image.jpeg');
22
23
        $this->assertEquals('/img/image.jpeg', $image->src());
24
    }
25
26
    public function test_srcset_empty_on_construct() {
27
        $image = new ResponsiveImage('img/image.jpeg');
28
29
        $this->assertEquals('', $image->srcset());
30
    }
31
32
    public function test_srcset_add_single_source() {
33
        $image = new ResponsiveImage('img/image.jpeg');
34
        $image->addSource('img/test-500.jpg', '500px');
35
36
        $this->assertEquals('/img/test-500.jpg 500w', $image->srcset());
37
    }
38
39
    public function test_srcset_add_multiple_sources() {
40
        $image = new ResponsiveImage('img/image.jpeg');
41
42
        $image->addSource([
43
            'img/test.jpg'     => 1920,
44
            'img/test-300.jpg' => 300,
45
        ]);
46
47
        $this->assertEquals('/img/test.jpg 1920w,/img/test-300.jpg 300w', $image->srcset());
48
    }
49
50
    public function test_sizes_empty_on_construct() {
51
        $image = new ResponsiveImage('img/image.jpeg');
52
53
        $this->assertEquals('', $image->sizes());
54
    }
55
56
    public function test_sizes_add_single_size() {
57
        $image = new ResponsiveImage('tests/img/image.jpeg');
58
        $image->addSizes('min-width: 650px', '33vw');
59
60
        $this->assertEquals('(min-width: 650px) 33vw', $image->sizes());
61
    }
62
63
    public function test_sizes_add_multiple_sizes() {
64
        $image = new ResponsiveImage('tests/img/image.jpeg');
65
66
        $image->addSizes([
67
            'min-width: 1000px' => '50vw',
68
            '100vw',
69
        ]);
70
71
        $this->assertEquals('(min-width: 1000px) 50vw, 100vw', $image->sizes());
72
    }
73
74
}
75