ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
StandardTest.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
22 
26 
31 {
32  public function testRenderStandard(): void
33  {
34  $expected_title = 'test_title';
35  $expected_msg = 'test_msg';
36  $expected_url = 'test_url';
37 
38  $expected_html = $this->brutallyTrimHTML("
39  <div id=\"id_2\" class=\"ui-dropzone \">
40  <div class=\"modal fade il-modal-roundtrip\" tabindex=\"-1\" role=\"dialog\" id=\"id_1\">
41  <div class=\"modal-dialog\" role=\"document\" data-replace-marker=\"component\">
42  <div class=\"modal-content\">
43  <div class=\"modal-header\">
44  <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"close\">
45  <span aria-hidden=\"true\">&times;</span>
46  </button>
47  <span class=\"modal-title\">$expected_title
48  </span>
49  </div>
50  <div class=\"modal-body\">
51  </div>
52  <div class=\"modal-footer\">
53  <button class=\"btn btn-default\" data-dismiss=\"modal\">cancel</button>
54  </div>
55  </div>
56  </div>
57  </div>
58  <div class=\"ui-dropzone-container\">
59  <span class=\"ui-dropzone-message\">$expected_msg
60  </span>
61  </div>
62  </div>
63  ");
64 
65  $dropzone = $this->factory->standard($expected_title, $expected_msg, $expected_url, $this->input);
66 
67  $html = $this->brutallyTrimHTML($this->getDefaultRenderer(null, [
68  $this->input,
69  ])->render($dropzone));
70 
71  $this->assertEquals($expected_html, $html);
72  }
73 
74  public function testRenderStandardWithUploadButton(): void
75  {
76  $expected_button_html = 'test_button';
77 
78  $expected_html = $this->brutallyTrimHTML("
79  <div id=\"id_2\" class=\"ui-dropzone \">
80  <div class=\"modal fade il-modal-roundtrip\" tabindex=\"-1\" role=\"dialog\" id=\"id_1\">
81  <div class=\"modal-dialog\" role=\"document\" data-replace-marker=\"component\">
82  <div class=\"modal-content\">
83  <div class=\"modal-header\">
84  <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"close\">
85  <span aria-hidden=\"true\">&times;</span>
86  </button>
87  <span class=\"modal-title\">
88  </span>
89  </div>
90  <div class=\"modal-body\">
91  </div>
92  <div class=\"modal-footer\">
93  <button class=\"btn btn-default\" data-dismiss=\"modal\">cancel</button>
94  </div>
95  </div>
96  </div>
97  </div>
98  <div class=\"ui-dropzone-container\">
99  <span class=\"ui-dropzone-message\">
100  </span> $expected_button_html
101  </div>
102  </div>
103  ");
104 
105  $button_mock = $this->createMock(Button::class);
106  $button_mock->method('getCanonicalName')->willReturn($expected_button_html);
107  $button_mock->method('withOnClick')->willReturnSelf();
108 
109  $dropzone = $this->factory->standard('', '', '', $this->input)->withUploadButton($button_mock);
110 
111  $html = $this->brutallyTrimHTML($this->getDefaultRenderer(null, [
112  $button_mock,
113  $this->input,
114  ])->render($dropzone));
115 
116  $this->assertEquals($expected_html, $html);
117  }
118 }
getDefaultRenderer(JavaScriptBinding $js_binding=null, array $with_stub_renderings=[])
Definition: Base.php:355
brutallyTrimHTML(string $html)
A more radical version of normalizeHTML.
Definition: Base.php:444