10 use Symfony\Component\Console\Tester\CommandTester;
25 $optionsList = $this->command->getInputList();
26 $this->assertSame(1,
sizeof($optionsList));
27 $this->assertSame(
'index', $optionsList[0]->getName());
33 $indexerOne = $this->getIndexerMock(
34 [
'isScheduled',
'setScheduled'],
35 [
'indexer_id' =>
'indexer_1',
'title' =>
'Title_indexerOne']
37 $indexerOne->expects($this->once())->method(
'isScheduled')->willReturn(
true);
38 $indexerTwo = $this->getIndexerMock(
39 [
'isScheduled',
'setScheduled'],
40 [
'indexer_id' =>
'indexer_2',
'title' =>
'Title_indexerTwo']
42 $indexerTwo->expects($this->once())->method(
'isScheduled')->willReturn(
false);
46 $commandTester =
new CommandTester($this->command);
47 $commandTester->execute([]);
48 $actualValue = $commandTester->getDisplay();
49 $expectedValue = sprintf(
'%-50s ',
'Title_indexerOne' .
':') .
'Update by Schedule' . PHP_EOL
50 . sprintf(
'%-50s ',
'Title_indexerTwo' .
':') .
'Update on Save';
51 $this->assertStringStartsWith($expectedValue, $actualValue);
64 foreach ($indexers as $indexerData) {
65 $indexerMock = $this->getIndexerMock(
66 [
'isScheduled',
'setScheduled'],
69 $indexerMock->method(
'isScheduled')
70 ->willReturn($isScheduled[$indexerData[
'indexer_id']]);
71 $indexerMocks[] = $indexerMock;
77 $commandTester =
new CommandTester($this->command);
78 $commandTester->execute([
'index' => $inputIndexers]);
79 $actualValue = $commandTester->getDisplay();
80 $expectedValue = sprintf(
'%-50s ',
'Title_indexerOne' .
':') .
'Update by Schedule' . PHP_EOL
81 . sprintf(
'%-50s ',
'Title_indexerTwo' .
':') .
'Update on Save';
82 $this->assertStringStartsWith($expectedValue, $actualValue);
98 'indexer_id' =>
'id_indexerOne',
99 'title' =>
'Title_indexerOne' 102 'indexer_id' =>
'id_indexerTwo',
103 'title' =>
'Title_indexerTwo' 105 'id_indexerThree' => [
106 'indexer_id' =>
'id_indexerThree',
107 'title' =>
'Title_indexerThree' 111 'id_indexerOne' =>
true,
112 'id_indexerTwo' =>
false,
113 'id_indexerThree' =>
false,
executeWithIndexDataProvider()
testExecuteWithIndex(array $inputIndexers, array $indexers, array $isScheduled)
initIndexerCollectionByItems(array $items)