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.

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

211  {
212  return new I\Component\Dropzone\File\Factory();
213  }
+ Here is the caller graph for this function:

◆ getUIFactory()

DropzoneRendererTest::getUIFactory ( )

Definition at line 167 of file DropzoneRendererTest.php.

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

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
+ Here is the call graph for this function:

◆ normalizeHTML()

DropzoneRendererTest::normalizeHTML (   $html)

Definition at line 202 of file DropzoneRendererTest.php.

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

203  {
204  $html = trim(str_replace("\t", "", $html));
205 
206  return parent::normalizeHTML($html);
207  }
+ Here is the caller graph for this function:

◆ setUp()

DropzoneRendererTest::setUp ( )

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.

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

30  {
31  $f = $this->dropzone();
32  $this->assertInstanceOf(self::STANDARD, $f->standard(''));
33  $this->assertInstanceOf(self::WRAPPER, $f->wrapper('', $this->legacy_factory->legacy('')));
34  }
+ Here is the call graph for this function:

◆ testModifiers()

DropzoneRendererTest::testModifiers ( )

Definition at line 141 of file DropzoneRendererTest.php.

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

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:15
$message
Definition: xapiexit.php:14
$url
+ Here is the call graph for this function:

◆ testRenderMetadata()

DropzoneRendererTest::testRenderMetadata ( )

Definition at line 102 of file DropzoneRendererTest.php.

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

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
+ 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.

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

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  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
+ 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.

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

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  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
+ 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.

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

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  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
+ Here is the call graph for this function:

◆ testWithButton()

DropzoneRendererTest::testWithButton ( )

Definition at line 130 of file DropzoneRendererTest.php.

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

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  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
+ 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: