44 $objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
45 $this->processingErrorFactoryMock = $this->createPartialMock(
62 $this->processingErrorFactoryMock->expects($this->any())->method(
'create')->willReturnOnConsecutiveCalls(
63 $this->processingError1,
64 $this->processingError2,
65 $this->processingError3
71 'errorFactory' => $this->processingErrorFactoryMock
81 $result = $this->model->addError(
89 $this->assertEquals(
$result, $this->model);
97 $this->model->addRowToSkip(7);
98 $result = $this->model->isRowInvalid(7);
107 $this->model->addErrorMessageTemplate(
'columnNotFound',
'Template: No column');
108 $this->model->addError(
'systemException');
109 $this->model->addError(
'columnNotFound',
'critical', 7,
'Some column name',
null,
'Description');
110 $this->model->addError(
'columnEmptyHeader',
'not-critical', 4,
'Some column name',
'No header',
'Description');
111 $result = $this->model->getRowsGroupedByErrorCode([
'systemException'], [],
false);
112 $expectedResult = [
'systemException' => [0 => 1]];
113 $this->assertEquals($expectedResult,
$result);
122 $this->model->addError(
'systemException', $errorLevel, $rowNumber,
'Column name',
'Message',
'Description');
123 $result = $this->model->isRowInvalid($rowNumber);
124 $this->assertEquals($isValid,
$result);
145 $rowsNumber = $this->model->getInvalidRowsCount();
146 $this->assertEquals($rowsNumber, 0);
154 $this->model->addError(
'systemException',
'critical', 7,
'Some column name',
'Message',
'Description');
155 $rowsNumber = $this->model->getInvalidRowsCount();
156 $this->assertEquals($rowsNumber, 1);
164 $this->model->addError(
'systemException');
165 $this->model->addError(
'systemException',
'critical', 8,
'Some column name',
'Message',
'Description');
166 $this->model->addError(
'systemException',
'critical', 7,
'Some column name',
'Message',
'Description');
167 $rowsNumber = $this->model->getInvalidRowsCount();
168 $this->assertEquals($rowsNumber, 2);
176 $this->model->initValidationStrategy(
'validation-stop-on-errors', 5);
177 $this->assertEquals(5, $this->model->getAllowedErrorsCount());
185 $this->model->addError(
'systemException',
'not-critical', 7,
'Some column name',
'Message',
'Description');
186 $this->model->addError(
'systemException',
'not-critical', 4,
'Some column name',
'Message',
'Description');
187 $this->model->addError(
'systemException',
'not-critical', 2,
'Some column name',
'Message',
'Description');
188 $this->model->initValidationStrategy(
'validation-stop-on-errors', 2);
189 $result = $this->model->isErrorLimitExceeded();
198 $this->expectException(\
Magento\Framework\Exception\LocalizedException::class);
199 $this->model->initValidationStrategy(
null);
207 $this->model->addError(
'systemException');
208 $this->model->addError(
'systemException',
'not-critical', 7,
'Some column name',
'Message',
'Description');
209 $this->model->addError(
'systemException',
'not-critical', 4,
'Some column name',
'Message',
'Description');
210 $result = $this->model->isErrorLimitExceeded();
219 $this->model->addError(
'systemException');
220 $this->model->addError(
'systemException',
'critical', 7,
'Some column name',
'Message',
'Description');
221 $this->model->addError(
'systemException',
'critical', 4,
'Some column name',
'Message',
'Description');
222 $result = $this->model->isErrorLimitExceeded();
231 $this->model->addError(
'systemException');
232 $this->model->addError(
'columnNotFound',
'critical', 7,
'Some column name',
'Message',
'Description');
233 $this->model->addError(
'columnEmptyHeader',
'not-critical', 4,
'Some column name',
'Message',
'Description');
234 $result = $this->model->hasFatalExceptions();
243 $this->model->addError(
'systemException',
'not-critical', 4,
'Some column name',
'Message',
'Description');
244 $result = $this->model->hasFatalExceptions();
253 $result = $this->model->hasToBeTerminated();
262 $this->model->addError(
'systemException',
'not-critical', 4,
'Some column name',
'Message',
'Description');
263 $result = $this->model->hasToBeTerminated();
272 $this->model->addError(
'systemException',
'not-critical', 4,
'Some column name',
'Message',
'Description');
273 $this->model->addError(
'systemException',
'not-critical', 5,
'Some column name',
'Message',
'Description');
274 $this->model->addError(
'systemException',
'not-critical', 6,
'Some column name',
'Message',
'Description');
275 $result = $this->model->getAllErrors();
277 $this->assertInternalType(
'array',
$result);
278 $this->assertCount(3,
$result);
287 $this->model->addError(
'systemException1',
'not-critical', 1);
288 $this->model->addError(
'systemException2',
'not-critical', 1);
289 $this->model->addError(
'systemException3',
'not-critical', 2);
290 $result = $this->model->getErrorByRowNumber(1);
292 $this->assertInternalType(
'array',
$result);
293 $this->assertCount(2,
$result);
296 $this->assertEquals(
'systemException1',
$result[0]->getErrorCode());
297 $this->assertEquals(
'systemException2',
$result[1]->getErrorCode());
306 $this->processingErrorFactoryMock->expects($this->any())->method(
'create')->willReturnOnConsecutiveCalls(
307 $this->processingError1,
308 $this->processingError2
310 $this->model->addError(
'systemException',
'not-critical', 1);
311 $this->model->addError(
'systemException',
'not-critical', 1);
312 $result = $this->model->getErrorByRowNumber(1);
314 $this->assertCount(1,
$result);
315 $this->assertEquals(1, $this->model->getErrorsCount());
323 $this->model->addError(
'systemException',
'not-critical', 4,
'Some column name',
'Message',
'Description');
324 $this->model->addError(
'columnNotFound',
'critical', 7,
'Some column name',
'No column',
'Description');
325 $this->model->addError(
'systemException',
'not-critical', 9,
'Some column name',
'Message',
'Description');
326 $result = $this->model->getErrorsByCode([
'systemException']);
327 $this->assertCount(2,
$result);
335 $this->model->addError(
'columnNotFound',
'not-critical', 4,
'Some column name',
'Message',
'Description');
336 $this->model->addError(
'columnNotFound',
'critical', 7,
'Some column name',
'No column',
'Description');
337 $this->model->addError(
'columnEmptyHeader',
'not-critical', 5,
'Some column name',
'No header',
'Description');
338 $result = $this->model->getErrorsByCode([
'systemException']);
339 $this->assertCount(0,
$result);
352 $this->model->addError(
'systemException');
353 $this->model->addError(
'columnNotFound',
'critical', 7,
'Some column name',
'No column',
'Description');
354 $this->model->addError(
'columnEmptyHeader',
'not-critical', 4,
'Some column name',
'No header',
'Description');
356 $result = call_user_func_array([$this->model,
'getRowsGroupedByErrorCode'],
$params);
358 $this->assertEquals($expectedResult,
$result);
366 $errorCode1 =
'systemException';
367 $errorCode2 =
'columnNotFound';
368 $errorCode3 =
'columnEmptyHeader';
371 $message2 =
'No column';
372 $message3 =
'No header';
384 [[$errorCode3, $errorCode2], [$errorCode2]],
389 [
$message1 => [1], $message2 => [8], $message3 => [5]]
393 [[$errorCode1], [],
false],
397 [[], [$errorCode2],
false],
398 [$errorCode1 => [1], $errorCode3 => [5]]
401 [[$errorCode3, $errorCode2], [$errorCode2],
false],
406 [$errorCode1 => [1], $errorCode2 => [8], $errorCode3 => [5]]
416 $result = $this->model->getRowsGroupedByErrorCode();
417 $this->assertInternalType(
'array',
$result);
418 $this->assertCount(0,
$result);
426 $this->assertEquals($this->model->getAllowedErrorsCount(), 0);
434 $this->model->addError(
'systemException',
'not-critical', 4,
'Some column name',
'Message',
'Description');
435 $this->model->addError(
'columnNotFound',
'critical', 7,
'Some column name',
'No column',
'Description');
436 $this->model->clear();
437 $result = $this->model->getAllErrors();
438 $this->assertEquals([],
$result);
446 $this->model->addError(
'systemException',
'not-critical', 4,
'Some column name',
'Message',
'Description');
447 $this->model->addError(
'columnNotFound',
'critical', 7,
'Some column name',
'No column',
'Description');
448 $this->model->addError(
'systemException',
'not-critical', 9,
'Some column name',
'Message',
'Description');
449 $result = $this->model->getErrorsCount([
'critical']);
450 $this->assertEquals(
$result, 1);
const ERROR_LEVEL_NOT_CRITICAL
testGetInvalidRowsCountTwo()
testInitValidationStrategy()
$processingErrorFactoryMock
testGetAllowedErrorsCount()
testGetInvalidRowsCountZero()
testGetErrorByRowNumber()
testIsRowInvalid($errorLevel, $rowNumber, $isValid)
testGetErrorsByCodeInArray()
const ERROR_LEVEL_WARNING
testGetRowsGroupedByErrorCodeWithErrors(array $params=[], array $expectedResult=[])
testAddErrorMessageTemplate()
testGetInvalidRowsCountOne()
testIsErrorLimitExceededTrue()
const ERROR_LEVEL_CRITICAL
testInitValidationStrategyException()
isRowInvalidDataProvider()
testIsErrorLimitExceededFalse()
testHasToBeTerminatedTrue()
testHasFatalExceptionsTrue()
testGetErrorsByCodeNotInArray()
testHasFatalExceptionsFalse()
testAddTheSameErrorTwice()
getRowsGroupedByErrorCodeWithErrorsDataProvider()
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
testInitValidationStrategyExceed()
testHasToBeTerminatedFalse()
testGetRowsGroupedByErrorCodeNoErrors()