ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
DropzoneRendererTest Class Reference

Class FileDropzoneRendererTest. More...

+ Inheritance diagram for DropzoneRendererTest:
+ Collaboration diagram for DropzoneRendererTest:

Public Member Functions

 setUp ()
 
 test_implements_factory_interface ()
 
 testRenderStandardDropzone ()
 should be rendered with the css class .standard and no content inside the dropzone div. More...
 
 testRenderStandardDropzoneWithMessage ()
 should be rendered with the css class .standard and a span-tag with the passed in message inside the dropzone div. More...
 
 testRenderWrapperDropzone ()
 A wrapper dropzone --------------------------------------------------------------—. More...
 
 testRenderMetadata ()
 
 testWithButton ()
 
 testModifiers ()
 
 getUIFactory ()
 
 normalizeHTML ($html)
 
- Public Member Functions inherited from ILIAS_UI_TestBase
 setUp ()
 
 tearDown ()
 
 getUIFactory ()
 
 getTemplateFactory ()
 
 getResourceRegistry ()
 
 getLanguage ()
 
 getJavaScriptBinding ()
 
 getRefinery ()
 
 getDefaultRenderer (JavaScriptBinding $js_binding=null)
 
 getDecoratedRenderer (Renderer $default)
 
 normalizeHTML ($html)
 
 assertHTMLEquals ($expected_html_as_string, $html_as_string)
 

Data Fields

const STANDARD = "ILIAS\\UI\\Component\\Dropzone\\File\\Standard"
 
const WRAPPER = "ILIAS\\UI\\Component\\Dropzone\\File\\Wrapper"
 

Protected Member Functions

 dropzone ()
 
- Protected Member Functions inherited from ILIAS_UI_TestBase
 brutallyTrimHTML ($html)
 A more radical version of normalizeHTML. More...
 

Detailed Description

Class FileDropzoneRendererTest.

Author
nmaerchy nm@st.nosp@m.uder.nosp@m.-raim.nosp@m.ann..nosp@m.ch

Definition at line 16 of file DropzoneRendererTest.php.

Member Function Documentation

◆ dropzone()

DropzoneRendererTest::dropzone ( )
protected

Definition at line 210 of file DropzoneRendererTest.php.

211 {
212 return new I\Component\Dropzone\File\Factory();
213 }

Referenced by test_implements_factory_interface(), testModifiers(), testRenderMetadata(), testRenderStandardDropzone(), testRenderStandardDropzoneWithMessage(), testRenderWrapperDropzone(), and testWithButton().

+ Here is the caller graph for this function:

◆ getUIFactory()

DropzoneRendererTest::getUIFactory ( )

Reimplemented from ILIAS_UI_TestBase.

Definition at line 167 of file DropzoneRendererTest.php.

168 {
169 $factory = new class extends NoUIFactory {
170 public function button()
171 {
172 return new I\Component\Button\Factory(new I\Component\SignalGenerator());
173 }
174 public function modal()
175 {
176 return new I\Component\Modal\Factory(new I\Component\SignalGenerator());
177 }
178 public function link()
179 {
180 return new I\Component\Link\Factory(new I\Component\SignalGenerator());
181 }
182 public function dropdown()
183 {
184 return new I\Component\Dropdown\Factory(new I\Component\SignalGenerator());
185 }
186 public function symbol() : C\Symbol\Factory
187 {
188 return new I\Component\Symbol\Factory(
189 new I\Component\Symbol\Icon\Factory(),
190 new I\Component\Symbol\Glyph\Factory(),
191 new I\Component\Symbol\Avatar\Factory()
192 );
193 }
194 public function legacy($content)
195 {
196 return new I\Component\Legacy\Legacy($content, new I\Component\SignalGenerator());
197 }
198 };
199 return $factory;
200 }
legacy()
Definition: legacy.php:3
$factory
Definition: metadata.php:58
modal()
This second example shows a scenario in which the Close Button is used in an overlay as indicated in ...
Definition: modal.php:7

References $factory, legacy(), and modal().

+ Here is the call graph for this function:

◆ normalizeHTML()

DropzoneRendererTest::normalizeHTML (   $html)

Reimplemented from ILIAS_UI_TestBase.

Definition at line 202 of file DropzoneRendererTest.php.

203 {
204 $html = trim(str_replace("\t", "", $html));
205
206 return parent::normalizeHTML($html);
207 }

Referenced by testRenderMetadata(), testRenderStandardDropzone(), testRenderStandardDropzoneWithMessage(), testRenderWrapperDropzone(), and testWithButton().

+ Here is the caller graph for this function:

◆ setUp()

DropzoneRendererTest::setUp ( )

Reimplemented from ILIAS_UI_TestBase.

Definition at line 23 of file DropzoneRendererTest.php.

23 : void
24 {
25 $sig_gen = new \ILIAS\UI\Implementation\Component\SignalGenerator();
26 $this->legacy_factory = new I\Component\Legacy\Factory($sig_gen);
27 }

◆ test_implements_factory_interface()

DropzoneRendererTest::test_implements_factory_interface ( )

Definition at line 29 of file DropzoneRendererTest.php.

30 {
31 $f = $this->dropzone();
32 $this->assertInstanceOf(self::STANDARD, $f->standard(''));
33 $this->assertInstanceOf(self::WRAPPER, $f->wrapper('', $this->legacy_factory->legacy('')));
34 }

References Vendor\Package\$f, and dropzone().

+ Here is the call graph for this function:

◆ testModifiers()

DropzoneRendererTest::testModifiers ( )

Definition at line 141 of file DropzoneRendererTest.php.

142 {
143 $url = 'https://ilias.de/123?test=8&lorem=ipsum';
144 $message = 'Everything\'s fine here, just drop some files...';
145 $filesize = new DataSize(1024, DataSize::KB);
146 $file_types = array( 'pdf', 'docx' );
147 $allowed_files = 5;
148 $dropzone = $this->dropzone()
149 ->standard($url)
150 ->withMessage($message)
151 ->withUserDefinedFileNamesEnabled(true)
152 ->withUserDefinedDescriptionEnabled(true)
153 ->withAllowedFileTypes($file_types)
154 ->withFileSizeLimit($filesize)
155 ->withMaxFiles($allowed_files);
156
157 $this->assertEquals($url, $dropzone->getUploadUrl());
158 $this->assertEquals($message, $dropzone->getMessage());
159 $this->assertTrue($dropzone->allowsUserDefinedFileNames());
160 $this->assertTrue($dropzone->allowsUserDefinedFileDescriptions());
161 $this->assertEquals($file_types, $dropzone->getAllowedFileTypes());
162 $this->assertEquals($filesize, $dropzone->getFileSizeLimit());
163 $this->assertEquals("1.024 KB", $dropzone->getFileSizeLimit()->__toString());
164 $this->assertEquals($allowed_files, $dropzone->getMaxFiles());
165 }
Class DataSize.
Definition: DataSize.php:16
$url
$message
Definition: xapiexit.php:14

References $message, $url, and dropzone().

+ Here is the call graph for this function:

◆ testRenderMetadata()

DropzoneRendererTest::testRenderMetadata ( )

Definition at line 102 of file DropzoneRendererTest.php.

103 {
104 $with_user_defined_names_html = '<div id="id_1" class="il-dropzone-base"><div class="clearfix hidden-sm-up"></div><div class="il-upload-file-list" ><div class="container-fluid il-upload-file-items"><div class="error-messages" style="display: none;"><div class="alert alert-danger" role="alert"><!-- General error messages are inserted here with javascript --></div></div><!-- rows from templates are cloned here with javascript --></div><!-- Templates --><div class="container-fluid" ><!-- hidden Template --><div class="il-upload-file-item il-upload-file-item-template clearfix row standard hidden"><div class="col-xs-12 col-no-padding"><span class="file-info toggle"><a class="glyph" aria-label="collapse_content"><span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span></a><a class="glyph" aria-label="expand_content"><span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span></a></span><!-- Display Filename--><span class="file-info filename">FILENAME<!-- File name is inserted with javascript here --></span><!-- Display Filesize--><span class="file-info filesize">100KB<!-- File size is inserted with javascript here --></span><!-- Dropdown with actions--><span class="pull-right remove"><!--<div class="dropdown"><button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-label="actions" aria-haspopup="true" aria-expanded="false" > <span class="caret"></span></button><ul class="dropdown-menu"><li><button class="btn btn-link" aria-label="delete_file" data-action="">remove</button></li><li><button class="btn btn-link" aria-label="edit_metadata" data-action="">edit_metadata</button></li></ul></div>--><button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button></span><!-- Progress Bar--><div class="progress" style="margin: 10px 0; display: none;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="0"aria-valuemin="0"aria-valuemax="100"></div></div><!-- Error Messages --><div class="file-error-message alert alert-danger" role="alert" style="display: none;"><!-- Error message for file is inserted with javascript here --></div><div class="file-success-message alert alert-success" role="alert" style="display: none;"><!-- Success message for file is inserted with javascript here --></div><br><div class="form-horizontal metadata" style="display: none;"><div class="form-group"><label class="col-sm-3 control-label">filename</label><div class="col-sm-9"><input type="text" class="form-control filename-input"></div></div></div></div></div><!-- li from templates are cloned here with javascript --></div></div><div class="container-fluid"><div class="il-dropzone standard clearfix row" data-upload-id="id_1"><div class="col-xs-12 col-md-3 col-sm-12 col-lg-3 dz-default dz-message il-dropzone-standard-select-files-wrapper "> <!--col-no-padding--><a href="#" >select_files_from_computer</a></div><div class="col-xs-12 col-md-9 col-sm-12 col-lg-9 col-no-padding"><span class="pull-right dz-default dz-message">drag_files_here</span></div></div><div class="clearfix hidden-sm-up"></div></div></div>';
105 $with_user_defined_names = $this->dropzone()
106 ->standard('https://ilias.de/ilias.php')
107 ->withUserDefinedFileNamesEnabled(true);
108 $html = $this->normalizeHTML($this->getDefaultRenderer()->render($with_user_defined_names));
109 $this->assertEquals($with_user_defined_names_html, $html);
110
111 $with_user_defined_descriptions_html = '<div id="id_1" class="il-dropzone-base"><div class="clearfix hidden-sm-up"></div><div class="il-upload-file-list" ><div class="container-fluid il-upload-file-items"><div class="error-messages" style="display: none;"><div class="alert alert-danger" role="alert"><!-- General error messages are inserted here with javascript --></div></div><!-- rows from templates are cloned here with javascript --></div><!-- Templates --><div class="container-fluid" ><!-- hidden Template --><div class="il-upload-file-item il-upload-file-item-template clearfix row standard hidden"><div class="col-xs-12 col-no-padding"><span class="file-info toggle"><a class="glyph" aria-label="collapse_content"><span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span></a><a class="glyph" aria-label="expand_content"><span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span></a></span><!-- Display Filename--><span class="file-info filename">FILENAME<!-- File name is inserted with javascript here --></span><!-- Display Filesize--><span class="file-info filesize">100KB<!-- File size is inserted with javascript here --></span><!-- Dropdown with actions--><span class="pull-right remove"><!--<div class="dropdown"><button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-label="actions" aria-haspopup="true" aria-expanded="false" > <span class="caret"></span></button><ul class="dropdown-menu"><li><button class="btn btn-link" aria-label="delete_file" data-action="">remove</button></li><li><button class="btn btn-link" aria-label="edit_metadata" data-action="">edit_metadata</button></li></ul></div>--><button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button></span><!-- Progress Bar--><div class="progress" style="margin: 10px 0; display: none;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="0"aria-valuemin="0"aria-valuemax="100"></div></div><!-- Error Messages --><div class="file-error-message alert alert-danger" role="alert" style="display: none;"><!-- Error message for file is inserted with javascript here --></div><div class="file-success-message alert alert-success" role="alert" style="display: none;"><!-- Success message for file is inserted with javascript here --></div><br><div class="form-horizontal metadata" style="display: none;"><div class="form-group"><label class="col-sm-3 control-label" for="description-input">description</label><div class="col-sm-9"><textarea class="form-control description-input" id="description-input" rows="3"></textarea></div></div></div></div></div><!-- li from templates are cloned here with javascript --></div></div><div class="container-fluid"><div class="il-dropzone standard clearfix row" data-upload-id="id_1"><div class="col-xs-12 col-md-3 col-sm-12 col-lg-3 dz-default dz-message il-dropzone-standard-select-files-wrapper "> <!--col-no-padding--><a href="#" >select_files_from_computer</a></div><div class="col-xs-12 col-md-9 col-sm-12 col-lg-9 col-no-padding"><span class="pull-right dz-default dz-message">drag_files_here</span></div></div><div class="clearfix hidden-sm-up"></div></div></div>';
112 $with_user_defined_descriptions = $this->dropzone()
113 ->standard('https://ilias.de/ilias.php')
114 ->withUserDefinedDescriptionEnabled(true);
115 $html = $this->normalizeHTML($this->getDefaultRenderer()
116 ->render($with_user_defined_descriptions));
117 $this->assertEquals($with_user_defined_descriptions_html, $html);
118
119 $with_user_defined_names_and_descriptions_html = '<div id="id_1" class="il-dropzone-base"><div class="clearfix hidden-sm-up"></div><div class="il-upload-file-list" ><div class="container-fluid il-upload-file-items"><div class="error-messages" style="display: none;"><div class="alert alert-danger" role="alert"><!-- General error messages are inserted here with javascript --></div></div><!-- rows from templates are cloned here with javascript --></div><!-- Templates --><div class="container-fluid" ><!-- hidden Template --><div class="il-upload-file-item il-upload-file-item-template clearfix row standard hidden"><div class="col-xs-12 col-no-padding"><span class="file-info toggle"><a class="glyph" aria-label="collapse_content"><span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span></a><a class="glyph" aria-label="expand_content"><span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span></a></span><!-- Display Filename--><span class="file-info filename">FILENAME<!-- File name is inserted with javascript here --></span><!-- Display Filesize--><span class="file-info filesize">100KB<!-- File size is inserted with javascript here --></span><!-- Dropdown with actions--><span class="pull-right remove"><!--<div class="dropdown"><button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-label="actions" aria-haspopup="true" aria-expanded="false" > <span class="caret"></span></button><ul class="dropdown-menu"><li><button class="btn btn-link" aria-label="delete_file" data-action="">remove</button></li><li><button class="btn btn-link" aria-label="edit_metadata" data-action="">edit_metadata</button></li></ul></div>--><button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button></span><!-- Progress Bar--><div class="progress" style="margin: 10px 0; display: none;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="0"aria-valuemin="0"aria-valuemax="100"></div></div><!-- Error Messages --><div class="file-error-message alert alert-danger" role="alert" style="display: none;"><!-- Error message for file is inserted with javascript here --></div><div class="file-success-message alert alert-success" role="alert" style="display: none;"><!-- Success message for file is inserted with javascript here --></div><br><div class="form-horizontal metadata" style="display: none;"><div class="form-group"><label class="col-sm-3 control-label">filename</label><div class="col-sm-9"><input type="text" class="form-control filename-input"></div></div><div class="form-group"><label class="col-sm-3 control-label" for="description-input">description</label><div class="col-sm-9"><textarea class="form-control description-input" id="description-input" rows="3"></textarea></div></div></div></div></div><!-- li from templates are cloned here with javascript --></div></div><div class="container-fluid"><div class="il-dropzone standard clearfix row" data-upload-id="id_1"><div class="col-xs-12 col-md-3 col-sm-12 col-lg-3 dz-default dz-message il-dropzone-standard-select-files-wrapper "> <!--col-no-padding--><a href="#" >select_files_from_computer</a></div><div class="col-xs-12 col-md-9 col-sm-12 col-lg-9 col-no-padding"><span class="pull-right dz-default dz-message">drag_files_here</span></div></div><div class="clearfix hidden-sm-up"></div></div></div>';
120 $with_user_defined_names_and_descriptions = $this->dropzone()
121 ->standard('https://ilias.de/ilias.php')
122 ->withUserDefinedDescriptionEnabled(true)
123 ->withUserDefinedFileNamesEnabled(true);
124 $html = $this->normalizeHTML($this->getDefaultRenderer()
125 ->render($with_user_defined_names_and_descriptions));
126 $this->assertEquals($with_user_defined_names_and_descriptions_html, $html);
127 }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268

References dropzone(), ILIAS_UI_TestBase\getDefaultRenderer(), and normalizeHTML().

+ Here is the call graph for this function:

◆ testRenderStandardDropzone()

DropzoneRendererTest::testRenderStandardDropzone ( )

should be rendered with the css class .standard and no content inside the dropzone div.

Definition at line 41 of file DropzoneRendererTest.php.

42 {
43
44 // setup expected objects
45 $expectedHtml = '<div id="id_1" class="il-dropzone-base"><div class="clearfix hidden-sm-up"></div><div class="il-upload-file-list" ><div class="container-fluid il-upload-file-items"><div class="error-messages" style="display: none;"><div class="alert alert-danger" role="alert"><!-- General error messages are inserted here with javascript --></div></div><!-- rows from templates are cloned here with javascript --></div><!-- Templates --><div class="container-fluid" ><!-- hidden Template --><div class="il-upload-file-item il-upload-file-item-template clearfix row standard hidden"><div class="col-xs-12 col-no-padding"><!-- Display Filename--><span class="file-info filename">FILENAME<!-- File name is inserted with javascript here --></span><!-- Display Filesize--><span class="file-info filesize">100KB<!-- File size is inserted with javascript here --></span><!-- Dropdown with actions--><span class="pull-right remove"><!--<div class="dropdown"><button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-label="actions" aria-haspopup="true" aria-expanded="false" > <span class="caret"></span></button><ul class="dropdown-menu"><li><button class="btn btn-link" aria-label="delete_file" data-action="">remove</button></li></ul></div>--><button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button></span><!-- Progress Bar--><div class="progress" style="margin: 10px 0; display: none;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="0"aria-valuemin="0"aria-valuemax="100"></div></div><!-- Error Messages --><div class="file-error-message alert alert-danger" role="alert" style="display: none;"><!-- Error message for file is inserted with javascript here --></div><div class="file-success-message alert alert-success" role="alert" style="display: none;"><!-- Success message for file is inserted with javascript here --></div></div></div><!-- li from templates are cloned here with javascript --></div></div><div class="container-fluid"><div class="il-dropzone standard clearfix row" data-upload-id="id_1"><div class="col-xs-12 col-md-3 col-sm-12 col-lg-3 dz-default dz-message il-dropzone-standard-select-files-wrapper "> <!--col-no-padding--><a href="#" >select_files_from_computer</a></div><div class="col-xs-12 col-md-9 col-sm-12 col-lg-9 col-no-padding"><span class="pull-right dz-default dz-message">drag_files_here</span></div></div><div class="clearfix hidden-sm-up"></div></div></div>';
46
47 // start test
48 $standardDropzone = $this->dropzone()->standard('');
49
50 $html = $this->normalizeHTML($this->getDefaultRenderer()->render($standardDropzone));
51
52 $this->assertEquals($expectedHtml, $html);
53 }

References dropzone(), ILIAS_UI_TestBase\getDefaultRenderer(), and normalizeHTML().

+ Here is the call graph for this function:

◆ testRenderStandardDropzoneWithMessage()

DropzoneRendererTest::testRenderStandardDropzoneWithMessage ( )

should be rendered with the css class .standard and a span-tag with the passed in message inside the dropzone div.

Definition at line 60 of file DropzoneRendererTest.php.

61 {
62
63 // setup expected objects
64 $expectedHtml = '<div id="id_1" class="il-dropzone-base"><div class="clearfix hidden-sm-up"></div><div class="il-upload-file-list" ><div class="container-fluid il-upload-file-items"><div class="error-messages" style="display: none;"><div class="alert alert-danger" role="alert"><!-- General error messages are inserted here with javascript --></div></div><!-- rows from templates are cloned here with javascript --></div><!-- Templates --><div class="container-fluid" ><!-- hidden Template --><div class="il-upload-file-item il-upload-file-item-template clearfix row standard hidden"><div class="col-xs-12 col-no-padding"><!-- Display Filename--><span class="file-info filename">FILENAME<!-- File name is inserted with javascript here --></span><!-- Display Filesize--><span class="file-info filesize">100KB<!-- File size is inserted with javascript here --></span><!-- Dropdown with actions--><span class="pull-right remove"><!--<div class="dropdown"><button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-label="actions" aria-haspopup="true" aria-expanded="false" > <span class="caret"></span></button><ul class="dropdown-menu"><li><button class="btn btn-link" aria-label="delete_file" data-action="">remove</button></li></ul></div>--><button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button></span><!-- Progress Bar--><div class="progress" style="margin: 10px 0; display: none;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="0"aria-valuemin="0"aria-valuemax="100"></div></div><!-- Error Messages --><div class="file-error-message alert alert-danger" role="alert" style="display: none;"><!-- Error message for file is inserted with javascript here --></div><div class="file-success-message alert alert-success" role="alert" style="display: none;"><!-- Success message for file is inserted with javascript here --></div></div></div><!-- li from templates are cloned here with javascript --></div></div><div class="container-fluid"><div class="il-dropzone standard clearfix row" data-upload-id="id_1"><div class="col-xs-12 col-md-3 col-sm-12 col-lg-3 dz-default dz-message il-dropzone-standard-select-files-wrapper "> <!--col-no-padding--><a href="#" >select_files_from_computer</a></div><div class="col-xs-12 col-md-9 col-sm-12 col-lg-9 col-no-padding"><span class="pull-right dz-default dz-message">message</span></div></div><div class="clearfix hidden-sm-up"></div></div></div>';
65
66 // start test
67 $standardDropzone = $this->dropzone()->standard('')->withMessage('message');
68
69 $html = $this->normalizeHTML($this->getDefaultRenderer()->render($standardDropzone));
70
71 $this->assertEquals($expectedHtml, $html);
72 }

References dropzone(), ILIAS_UI_TestBase\getDefaultRenderer(), and normalizeHTML().

+ Here is the call graph for this function:

◆ testRenderWrapperDropzone()

DropzoneRendererTest::testRenderWrapperDropzone ( )

A wrapper dropzone --------------------------------------------------------------—.

should be rendered with the css class .wrapper and all passed in ILIAS UI components inside the div.

Definition at line 83 of file DropzoneRendererTest.php.

84 {
85 // setup expected objects
86 $expectedHtml = '<div id="id_1" class="il-dropzone-base"><div class="il-dropzone wrapper" data-upload-id="id_1"><p>Pretty smart, isn\'t it?</p><p>Yeah, this is really smart.</p></div><div class="modal fade il-modal-roundtrip" tabindex="-1" role="dialog" id="id_4"><div class="modal-dialog" role="document" data-replace-marker="component"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button><h4 class="modal-title">upload</h4></div><div class="modal-body"><div class="il-upload-file-list" ><div class="container-fluid il-upload-file-items"><div class="error-messages" style="display: none;"><div class="alert alert-danger" role="alert"><!-- General error messages are inserted here with javascript --></div></div><!-- rows from templates are cloned here with javascript --></div><!-- Templates --><div class="container-fluid" ><!-- hidden Template --><div class="il-upload-file-item il-upload-file-item-template clearfix row standard hidden"><div class="col-xs-12 col-no-padding"><!-- Display Filename--><span class="file-info filename">FILENAME<!-- File name is inserted with javascript here --></span><!-- Display Filesize--><span class="file-info filesize">100KB<!-- File size is inserted with javascript here --></span><!-- Dropdown with actions--><span class="pull-right remove"><!--<div class="dropdown"><button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-label="actions" aria-haspopup="true" aria-expanded="false" > <span class="caret"></span></button><ul class="dropdown-menu"><li><button class="btn btn-link" aria-label="delete_file" data-action="">remove</button></li></ul></div>--><button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button></span><!-- Progress Bar--><div class="progress" style="margin: 10px 0; display: none;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="0"aria-valuemin="0"aria-valuemax="100"></div></div><!-- Error Messages --><div class="file-error-message alert alert-danger" role="alert" style="display: none;"><!-- Error message for file is inserted with javascript here --></div><div class="file-success-message alert alert-success" role="alert" style="display: none;"><!-- Success message for file is inserted with javascript here --></div></div></div><!-- li from templates are cloned here with javascript --></div></div></div><div class="modal-footer"><button class="btn btn-default btn-primary" data-action="" disabled="disabled">upload</button><a class="btn btn-default" data-dismiss="modal" aria-label="Close">cancel</a></div></div></div></div></div>';
87
88 // start test
89 $exampleTextQuestion = $this->legacy_factory->legacy("<p>Pretty smart, isn't it?</p>");
90 $exampleTextAnswer = $this->legacy_factory->legacy("<p>Yeah, this is really smart.</p>");
91 $wrapperDropzone = $this->dropzone()->wrapper('', [
92 $exampleTextQuestion,
93 $exampleTextAnswer,
94 ]);
95
96 $html = $this->normalizeHTML($this->getDefaultRenderer()->render($wrapperDropzone));
97
98 $this->assertEquals($expectedHtml, $html);
99 }

References dropzone(), ILIAS_UI_TestBase\getDefaultRenderer(), and normalizeHTML().

+ Here is the call graph for this function:

◆ testWithButton()

DropzoneRendererTest::testWithButton ( )

Definition at line 130 of file DropzoneRendererTest.php.

131 {
132 $expected_html = '<div id="id_1" class="il-dropzone-base"><div class="clearfix hidden-sm-up"></div><div class="il-upload-file-list" ><div class="container-fluid il-upload-file-items"><div class="error-messages" style="display: none;"><div class="alert alert-danger" role="alert"><!-- General error messages are inserted here with javascript --></div></div><!-- rows from templates are cloned here with javascript --></div><!-- Templates --><div class="container-fluid" ><!-- hidden Template --><div class="il-upload-file-item il-upload-file-item-template clearfix row standard hidden"><div class="col-xs-12 col-no-padding"><!-- Display Filename--><span class="file-info filename">FILENAME<!-- File name is inserted with javascript here --></span><!-- Display Filesize--><span class="file-info filesize">100KB<!-- File size is inserted with javascript here --></span><!-- Dropdown with actions--><span class="pull-right remove"><!--<div class="dropdown"><button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-label="actions" aria-haspopup="true" aria-expanded="false" > <span class="caret"></span></button><ul class="dropdown-menu"><li><button class="btn btn-link" aria-label="delete_file" data-action="">remove</button></li></ul></div>--><button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button></span><!-- Progress Bar--><div class="progress" style="margin: 10px 0; display: none;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="0"aria-valuemin="0"aria-valuemax="100"></div></div><!-- Error Messages --><div class="file-error-message alert alert-danger" role="alert" style="display: none;"><!-- Error message for file is inserted with javascript here --></div><div class="file-success-message alert alert-success" role="alert" style="display: none;"><!-- Success message for file is inserted with javascript here --></div></div></div><!-- li from templates are cloned here with javascript --></div></div><div class="container-fluid"><div class="il-dropzone standard clearfix row" data-upload-id="id_1"><div class="col-xs-12 col-md-3 col-sm-12 col-lg-3 dz-default dz-message il-dropzone-standard-select-files-wrapper "> <!--col-no-padding--><a href="#" >select_files_from_computer</a></div><div class="col-xs-12 col-md-9 col-sm-12 col-lg-9 col-no-padding"><span class="pull-right dz-default dz-message">drag_files_here</span></div></div><div class="clearfix hidden-sm-up"></div></div><button class="btn btn-default" data-action="#" id="id_2" disabled="disabled">Label</button></div>';
133 $button = new I\Component\Button\Standard('Label', '#');
134 $with_button = $this->dropzone()->standard('')->withUploadButton($button);
135 $html = $this->normalizeHTML($this->getDefaultRenderer()->render($with_button));
136 $this->assertEquals($expected_html, $html);
137 $this->assertEquals($button, $with_button->getUploadButton());
138 }

References dropzone(), ILIAS_UI_TestBase\getDefaultRenderer(), and normalizeHTML().

+ Here is the call graph for this function:

Field Documentation

◆ STANDARD

const DropzoneRendererTest::STANDARD = "ILIAS\\UI\\Component\\Dropzone\\File\\Standard"

Definition at line 18 of file DropzoneRendererTest.php.

◆ WRAPPER

const DropzoneRendererTest::WRAPPER = "ILIAS\\UI\\Component\\Dropzone\\File\\Wrapper"

Definition at line 19 of file DropzoneRendererTest.php.


The documentation for this class was generated from the following file: