protected function TaskRunnerTest::createTestScheduledTask in Webform Scheduled Tasks 8.2
Create a mock scheduled task to pass into the task runner.
Parameters
\Drupal\search_api\Task\TaskInterface|null $task: (Optional) A mock task or NULL if a default one should be setup.
\Drupal\webform_scheduled_tasks\Plugin\WebformScheduledTasks\ResultSetPluginInterface|null $result_set: (Optional) A mock result set or NULL if a default one should be setup.
Return value
\Drupal\webform_scheduled_tasks\Entity\WebformScheduledTaskInterface A scheduled task entity.
4 calls to TaskRunnerTest::createTestScheduledTask()
- TaskRunnerTest::testHaltScheduledTaskExceptionThrown in tests/
src/ Unit/ TaskRunnerTest.php - @covers ::executeTasks @dataProvider haltScheduledTaskExceptionThrownTestCases
- TaskRunnerTest::testMultipleTasksRun in tests/
src/ Unit/ TaskRunnerTest.php - @covers ::executeTasks
- TaskRunnerTest::testRetryScheduledTaskExceptionThrown in tests/
src/ Unit/ TaskRunnerTest.php - @covers ::executeTasks
- TaskRunnerTest::testSuccessfulTaskExecuted in tests/
src/ Unit/ TaskRunnerTest.php - @covers ::executeTasks
File
- tests/
src/ Unit/ TaskRunnerTest.php, line 126
Class
- TaskRunnerTest
- @coversDefaultClass \Drupal\webform_scheduled_tasks\TaskRunner @group webform_scheduled_tasks
Namespace
Drupal\Tests\webform_scheduled_tasks\UnitCode
protected function createTestScheduledTask($task = NULL, $result_set = NULL) {
$iterator = new \ArrayIterator([]);
$webform = $this
->prophesize(WebformInterface::class);
if ($result_set === NULL) {
$result_set = $this
->prophesize(ResultSetPluginInterface::class);
$result_set
->getResultSet()
->willReturn($iterator);
}
if ($task === NULL) {
$task = $this
->prophesize(TaskPluginInterface::class);
$task
->executeTask($iterator)
->shouldBeCalled();
}
$scheduled_task = $this
->prophesize(WebformScheduledTaskInterface::class);
$scheduled_task
->getTaskPlugin()
->willReturn($task
->reveal());
$scheduled_task
->getResultSetPlugin()
->willReturn($result_set
->reveal());
$scheduled_task
->getWebform()
->willReturn($webform
->reveal());
return $scheduled_task;
}