strategy = new LoadStrategy(); } /** * @dataProvider argumentsProvider * @param array $actualArguments * @param array $expectedArguments * @return void */ public function testProcessArgumentsReturnsCorrectArguments( array $actualArguments, array $expectedArguments ): void { $this->assertSame($expectedArguments, $this->strategy->processArguments($actualArguments)); } public function argumentsProvider(): array { return [ 'with less then or equal 2 arguments' => [ ['arg1', 'arg2'], ['arg1', 'arg2'], ], 'with last argument equals true' => [ ['arg1', 'arg2', true], ['arg1', 'REPLACE', 'arg2'], ], 'with last argument equals false' => [ ['arg1', 'arg2', false], ['arg1', 'arg2'], ], ]; } }