Skip to content
Snippets Groups Projects
Verified Commit caec1a5e authored by Lee Rowlands's avatar Lee Rowlands
Browse files

Issue #2969551 by quietone, mikelutz, joachim, benjifisher, catch: Migrate...

Issue #2969551 by quietone, mikelutz, joachim, benjifisher, catch: Migrate messages from caught exceptions need file and line details

(cherry picked from commit c915bfe0)
parent b5cb88d4
No related branches found
No related tags found
No related merge requests found
......@@ -189,7 +189,11 @@ public function import() {
}
catch (\Exception $e) {
$this->message->display(
$this->t('Migration failed with source plugin exception: @e', ['@e' => $e->getMessage()]), 'error');
$this->t('Migration failed with source plugin exception: @e in @file line @line', [
'@e' => $e->getMessage(),
'@file' => $e->getFile(),
'@line' => $e->getLine(),
]), 'error');
$this->migration->setStatus(MigrationInterface::STATUS_IDLE);
return MigrationInterface::RESULT_FAILED;
}
......@@ -269,8 +273,11 @@ public function import() {
}
catch (\Exception $e) {
$this->message->display(
$this->t('Migration failed with source plugin exception: @e',
['@e' => $e->getMessage()]), 'error');
$this->t('Migration failed with source plugin exception: @e in @file line @line', [
'@e' => $e->getMessage(),
'@file' => $e->getFile(),
'@line' => $e->getLine(),
]), 'error');
$this->migration->setStatus(MigrationInterface::STATUS_IDLE);
return MigrationInterface::RESULT_FAILED;
}
......
......@@ -66,12 +66,16 @@ public function testImportWithFailingRewind() {
$source->expects($this->once())
->method('rewind')
->will($this->throwException(new \Exception($exception_message)));
// The exception message contains the line number where it is thrown. Save
// it for the testing the exception message.
$line = (__LINE__) - 3;
$this->migration->expects($this->any())
->method('getSourcePlugin')
->will($this->returnValue($source));
// Ensure that a message with the proper message was added.
$exception_message .= " in " . __FILE__ . " line $line";
$this->message->expects($this->once())
->method('display')
->with("Migration failed with source plugin exception: " . Html::escape($exception_message));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment