ILIAS  trunk Revision v11.0_alpha-1861-g09f3d197f78
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ILIAS\FileUpload\FileUploadImplTest Class Reference

Class FileUploadImplTest. More...

+ Inheritance diagram for ILIAS\FileUpload\FileUploadImplTest:
+ Collaboration diagram for ILIAS\FileUpload\FileUploadImplTest:

Public Member Functions

 testRegisterWhichShouldSucceed ()
 
 testRegisterWithProcessedFilesWhichShouldFail ()
 
 testProcessWhichShouldSucceed ()
 
 testProcessWithFailedUploadWhichShouldGetRejected ()
 
 testHasUploadsWithoutUploadedFiles ()
 
 testHasUploadsWithSingleUploadedFile ()
 
 testHasUploadsWithMultipleUploadedFile ()
 

Protected Member Functions

 setUp ()
 

Private Attributes

FileUploadImpl $subject
 
 $prePorcessorManagerMock
 
 $filesystemsMock
 
 $globalHttpStateMock
 

Detailed Description

Member Function Documentation

◆ setUp()

ILIAS\FileUpload\FileUploadImplTest::setUp ( )
protected

Definition at line 231 of file FileUploadImplTestTBD.php.

231  : void
232  {
233  parent::setUp();
234 
235  $this->prePorcessorManagerMock = \Mockery::mock(PreProcessorManager::class);
236  $this->filesystemsMock = \Mockery::mock(Filesystems::class);
237  $this->globalHttpStateMock = \Mockery::mock(GlobalHttpState::class);
238 
239  $this->subject = new FileUploadImpl($this->prePorcessorManagerMock, $this->filesystemsMock, $this->globalHttpStateMock);
240  }

◆ testHasUploadsWithMultipleUploadedFile()

ILIAS\FileUpload\FileUploadImplTest::testHasUploadsWithMultipleUploadedFile ( )

Definition at line 213 of file FileUploadImplTestTBD.php.

213  : void
214  {
215  $files = [];
216  for ($i = 0; $i < 10; $i++) {
217  $files[] = Mockery::mock(UploadedFileInterface::class);
218  }
219 
220  $this->globalHttpStateMock->shouldReceive('request->getUploadedFiles')
221  ->once()
222  ->andReturn($files);
223 
224  $this->assertTrue($this->subject->hasUploads());
225  }

◆ testHasUploadsWithoutUploadedFiles()

ILIAS\FileUpload\FileUploadImplTest::testHasUploadsWithoutUploadedFiles ( )

Definition at line 189 of file FileUploadImplTestTBD.php.

189  : void
190  {
191  // No File-Upload Element
192  $this->globalHttpStateMock->shouldReceive('request->getUploadedFiles')
193  ->once()
194  ->andReturn([]);
195  $this->assertFalse($this->subject->hasUploads());
196  }

◆ testHasUploadsWithSingleUploadedFile()

ILIAS\FileUpload\FileUploadImplTest::testHasUploadsWithSingleUploadedFile ( )

Definition at line 200 of file FileUploadImplTestTBD.php.

200  : void
201  {
202  $uploadedFile = Mockery::mock(UploadedFileInterface::class);
203 
204  $this->globalHttpStateMock->shouldReceive('request->getUploadedFiles')
205  ->once()
206  ->andReturn([ $uploadedFile ]);
207 
208  $this->assertTrue($this->subject->hasUploads());
209  }

◆ testProcessWhichShouldSucceed()

ILIAS\FileUpload\FileUploadImplTest::testProcessWhichShouldSucceed ( )

Definition at line 105 of file FileUploadImplTestTBD.php.

References ILIAS\Filesystem\Stream\Streams\ofString(), and ILIAS\FileUpload\DTO\ProcessingStatus\OK.

105  : void
106  {
107  $processingResult = new ProcessingStatus(ProcessingStatus::OK, 'All green!');
108  $uploadedFile = Mockery::mock(UploadedFileInterface::class);
109  $uploadedFile
110  ->shouldReceive('getClientFilename')
111  ->once()
112  ->andReturn('hello.txt')
113  ->getMock()
114  ->shouldReceive('getSize')
115  ->once()
116  ->andReturn(10)
117  ->getMock()
118  ->shouldReceive('getClientMediaType')
119  ->once()
120  ->andReturn('text/plain')
121  ->getMock()
122  ->shouldReceive('getError')
123  ->once()
124  ->andReturn(UPLOAD_ERR_OK)
125  ->getMock()
126  ->shouldReceive('getStream')
127  ->twice()
128  ->andReturn(Streams::ofString("Text file content."));
129 
130  $uploadedFiles = [
131  $uploadedFile
132  ];
133 
134  $this->prePorcessorManagerMock->shouldReceive('process')
135  ->withAnyArgs()
136  ->once()
137  ->andReturn($processingResult);
138 
139  $this->globalHttpStateMock->shouldReceive('request->getUploadedFiles')
140  ->once()
141  ->andReturn($uploadedFiles);
142 
143  $this->subject->process();
144  }
static ofString(string $string)
Creates a new stream with an initial value.
Definition: Streams.php:41
+ Here is the call graph for this function:

◆ testProcessWithFailedUploadWhichShouldGetRejected()

ILIAS\FileUpload\FileUploadImplTest::testProcessWithFailedUploadWhichShouldGetRejected ( )

Definition at line 148 of file FileUploadImplTestTBD.php.

References ILIAS\Filesystem\Stream\Streams\ofString(), and ILIAS\FileUpload\DTO\ProcessingStatus\REJECTED.

148  : void
149  {
150  $uploadedFile = Mockery::mock(UploadedFileInterface::class);
151  $uploadedFile
152  ->shouldReceive('getClientFilename')
153  ->once()
154  ->andReturn('hello.txt')
155  ->getMock()
156  ->shouldReceive('getSize')
157  ->once()
158  ->andReturn(10)
159  ->getMock()
160  ->shouldReceive('getClientMediaType')
161  ->once()
162  ->andReturn('text/plain')
163  ->getMock()
164  ->shouldReceive('getError')
165  ->once()
166  ->andReturn(UPLOAD_ERR_PARTIAL)
167  ->getMock()
168  ->shouldReceive('getStream')
169  ->twice()
170  ->andReturn(Streams::ofString("Text file content."));
171 
172  $uploadedFiles = [
173  $uploadedFile
174  ];
175 
176  $this->globalHttpStateMock->shouldReceive('request->getUploadedFiles')
177  ->once()
178  ->andReturn($uploadedFiles);
179 
180  $this->subject->process();
181 
182  $result = $this->subject->getResults()[0];
183  $this->assertSame(ProcessingStatus::REJECTED, $result->getStatus()->getCode());
184  }
static ofString(string $string)
Creates a new stream with an initial value.
Definition: Streams.php:41
+ Here is the call graph for this function:

◆ testRegisterWhichShouldSucceed()

ILIAS\FileUpload\FileUploadImplTest::testRegisterWhichShouldSucceed ( )

Definition at line 76 of file FileUploadImplTestTBD.php.

76  : void
77  {
78  $processorMock = \Mockery::mock(PreProcessor::class);
79  $this->prePorcessorManagerMock->shouldReceive('with')
80  ->once()
81  ->with($processorMock);
82 
83  $this->subject->register($processorMock);
84  }

◆ testRegisterWithProcessedFilesWhichShouldFail()

ILIAS\FileUpload\FileUploadImplTest::testRegisterWithProcessedFilesWhichShouldFail ( )

Definition at line 88 of file FileUploadImplTestTBD.php.

88  : void
89  {
90  $processorMock = \Mockery::mock(PreProcessor::class);
91 
92  $this->globalHttpStateMock->shouldReceive('request->getUploadedFiles')
93  ->once()
94  ->andReturn([]);
95 
96  $this->expectException(IllegalStateException::class);
97  $this->expectExceptionMessage('Can not register processor after the upload was processed.');
98 
99  $this->subject->process();
100  $this->subject->register($processorMock);
101  }

Field Documentation

◆ $filesystemsMock

MockInterface Filesystems ILIAS\FileUpload\FileUploadImplTest::$filesystemsMock
private

Definition at line 67 of file FileUploadImplTestTBD.php.

◆ $globalHttpStateMock

MockInterface GlobalHttpState ILIAS\FileUpload\FileUploadImplTest::$globalHttpStateMock
private

Definition at line 71 of file FileUploadImplTestTBD.php.

◆ $prePorcessorManagerMock

MockInterface PreProcessorManager ILIAS\FileUpload\FileUploadImplTest::$prePorcessorManagerMock
private

Definition at line 63 of file FileUploadImplTestTBD.php.

◆ $subject

FileUpload ILIAS\FileUpload\FileUploadImplTest::$subject
private

Definition at line 59 of file FileUploadImplTestTBD.php.


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