1
+ <?php
2
+
3
+ /**
4
+ * responsive-images-css
5
+ *
6
+ * @category Jkphl
7
+ * @package Jkphl\Respimgcss
8
+ * @subpackage Jkphl\Respimgcss\Tests\Infrastructure
9
+ * @author Joschi Kuphal <joschi@kuphal.net> / @jkphl
10
+ * @copyright Copyright © 2018 Joschi Kuphal <joschi@kuphal.net> / @jkphl
11
+ * @license http://opensource.org/licenses/MIT The MIT License (MIT)
12
+ */
13
+
14
+ /***********************************************************************************
15
+ * The MIT License (MIT)
16
+ *
17
+ * Copyright © 2018 Joschi Kuphal <joschi@kuphal.net> / @jkphl
18
+ *
19
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of
20
+ * this software and associated documentation files (the "Software"), to deal in
21
+ * the Software without restriction, including without limitation the rights to
22
+ * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
23
+ * the Software, and to permit persons to whom the Software is furnished to do so,
24
+ * subject to the following conditions:
25
+ *
26
+ * The above copyright notice and this permission notice shall be included in all
27
+ * copies or substantial portions of the Software.
28
+ *
29
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
30
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
31
+ * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
32
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
33
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
34
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
35
+ ***********************************************************************************/
36
+
37
+ namespace Jkphl \Respimgcss \Tests \Infrastructure ;
38
+
39
+ use Jkphl \Respimgcss \Application \Factory \SourceSizeFactory ;
40
+ use Jkphl \Respimgcss \Infrastructure \SourceSizeList ;
41
+ use Jkphl \Respimgcss \Infrastructure \ViewportCalculatorServiceFactory ;
42
+ use Jkphl \Respimgcss \Tests \AbstractTestBase ;
43
+
44
+ /**
45
+ * Source size list test
46
+ *
47
+ * @package Jkphl\Respimgcss
48
+ * @subpackage Jkphl\Respimgcss\Tests\Infrastructure
49
+ */
50
+ class SourceSizeListTest extends AbstractTestBase
51
+ {
52
+ /**
53
+ * Test the source size list
54
+ */
55
+ public function testSourceSizeList ()
56
+ {
57
+ $ sourceSizeFactory = new SourceSizeFactory (new ViewportCalculatorServiceFactory (), 16 );
58
+ $ sourceSize = $ sourceSizeFactory ->createFromSourceSizeStr ('(min-width: 100px) 100vw ' );
59
+ $ sourceSizeList = new SourceSizeList ([$ sourceSize ]);
60
+ $ this ->assertInstanceOf (SourceSizeList::class, $ sourceSizeList );
61
+ $ this ->assertEquals (1 , count ($ sourceSizeList ));
62
+ $ this ->assertEquals ($ sourceSize , $ sourceSizeList [0 ]);
63
+ }
64
+
65
+ /**
66
+ * Test the source size list with invalid source size
67
+ *
68
+ * @expectedException \Jkphl\Respimgcss\Ports\InvalidArgumentException
69
+ * @expectedExceptionCode 1523047851
70
+ */
71
+ public function testSourceSizeListInvalid ()
72
+ {
73
+ new SourceSizeList (['test ' ]);
74
+ }
75
+ }
0 commit comments