ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
DeckTest.php
Go to the documentation of this file.
1 <?php
2 
3 /* Copyright (c) 2016 Timon Amstutz <timon.amstutz@ilub.unibe.ch> Extended GPL, see docs/LICENSE */
4 
5 require_once(__DIR__ . "/../../../../libs/composer/vendor/autoload.php");
6 require_once(__DIR__ . "/../../Base.php");
7 
8 use \ILIAS\UI\Component as C;
9 
14 {
15 
19  public function getFactory()
20  {
21  return new \ILIAS\UI\Implementation\Factory();
22  }
23 
25  {
26  $f = $this->getFactory();
27 
28  $this->assertInstanceOf("ILIAS\\UI\\Factory", $f);
29  $c = $f->card("Card Title");
30  $this->assertInstanceOf("ILIAS\\UI\\Component\\Deck\\Deck", $f->deck(array($c)));
31  }
32 
33  public function test_get_cards()
34  {
35  $f = $this->getFactory();
36  $c = $f->card("Card Title");
37  $d = $f->deck(array($c));
38 
39  $this->assertEquals($d->getCards(), array($c));
40  }
41 
42  public function test_with_cards()
43  {
44  $f = $this->getFactory();
45  $c = $f->card("Card Title");
46  $d = $f->deck(array($c));
47 
48  $d = $d->withCards(array($c,$c));
49  $this->assertEquals($d->getCards(), array($c,$c));
50  }
51 
52  public function test_get_size()
53  {
54  $f = $this->getFactory();
55 
56  $c = $f->card("Card Title");
57  $d = $f->deck(array($c));
58 
59  $this->assertEquals($d->getCardsSize(), C\Deck\Deck::SIZE_S);
60  }
61 
62  public function test_with_size()
63  {
64  $f = $this->getFactory();
65 
66  $c = $f->card("Card Title");
67  $d = $f->deck(array($c));
68 
69  $d = $d->withExtraSmallCardsSize();
70  $this->assertEquals($d->getCardsSize(), C\Deck\Deck::SIZE_XS);
71 
72  $d = $d->withSmallCardsSize();
73  $this->assertEquals($d->getCardsSize(), C\Deck\Deck::SIZE_S);
74 
75  $d = $d->withNormalCardsSize();
76  $this->assertEquals($d->getCardsSize(), C\Deck\Deck::SIZE_M);
77 
78  $d = $d->withLargeCardsSize();
79  $this->assertEquals($d->getCardsSize(), C\Deck\Deck::SIZE_L);
80 
81  $d = $d->withExtraLargeCardsSize();
82  $this->assertEquals($d->getCardsSize(), C\Deck\Deck::SIZE_XL);
83 
84  $d = $d->withFullSizedCardsSize();
85  $this->assertEquals($d->getCardsSize(), C\Deck\Deck::SIZE_FULL);
86  }
87 
88  public function test_render_content()
89  {
90  $r = $this->getDefaultRenderer();
91  $f = $this->getFactory();
92  $c = $f->card("Card Title");
93  $d = $f->deck(array($c));
94 
95  $d = $d->withCards(array($c,$c,$c,$c,$c,$c,$c))->withLargeCardsSize();
96 
97  $html = $r->render($d);
98 
99  $expected_html =
100  '<div class="il-deck">
101  <div class="row row-eq-height">
102  <div class="col-sm-12 col-md-4"><div class="il-card thumbnail"><div class="card-no-highlight"></div><div class="caption"><h5 class="card-title">Card Title</h5></div></div></div>
103  <div class="col-sm-12 col-md-4"><div class="il-card thumbnail"><div class="card-no-highlight"></div><div class="caption"><h5 class="card-title">Card Title</h5></div></div></div>
104  <div class="col-sm-12 col-md-4"><div class="il-card thumbnail"><div class="card-no-highlight"></div><div class="caption"><h5 class="card-title">Card Title</h5></div></div></div>
105  </div>
106  <div class="row row-eq-height">
107  <div class="col-sm-12 col-md-4"><div class="il-card thumbnail"><div class="card-no-highlight"></div><div class="caption"><h5 class="card-title">Card Title</h5></div></div></div>
108  <div class="col-sm-12 col-md-4"><div class="il-card thumbnail"><div class="card-no-highlight"></div><div class="caption"><h5 class="card-title">Card Title</h5></div></div></div>
109  <div class="col-sm-12 col-md-4"><div class="il-card thumbnail"><div class="card-no-highlight"></div><div class="caption"><h5 class="card-title">Card Title</h5></div></div></div>
110  </div>
111  <div class="row row-eq-height">
112  <div class="col-sm-12 col-md-4"><div class="il-card thumbnail"><div class="card-no-highlight"></div><div class="caption"><h5 class="card-title">Card Title</h5></div></div></div>
113  </div>
114  </div>';
115 
116  $this->assertHTMLEquals($expected_html, $html);
117  }
118 }
getFactory()
Definition: DeckTest.php:19
test_render_content()
Definition: DeckTest.php:88
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:216
test_implements_factory_interface()
Definition: DeckTest.php:24
Test on deck implementation.
Definition: DeckTest.php:13
$r
Definition: example_031.php:79
Provides common functionality for UI tests.
Definition: Base.php:177
test_get_cards()
Definition: DeckTest.php:33
assertHTMLEquals($expected_html_as_string, $html_as_string)
Definition: Base.php:252
Create styles array
The data for the language used.
test_with_size()
Definition: DeckTest.php:62
test_get_size()
Definition: DeckTest.php:52
test_with_cards()
Definition: DeckTest.php:42
$html
Definition: example_001.php:87
for($i=6; $i< 13; $i++) for($i=1; $i< 13; $i++) $d
Definition: date.php:296