public function testExecute() { $commandSubject = ['authorize']; $request = ['request_field1' => 'request_value1', 'request_field2' => 'request_value2']; $response = ['response_field1' => 'response_value1']; $transferO = $this->getMockBuilder('Magento\\Payment\\Gateway\\Http\\TransferInterface')->getMockForAbstractClass(); $this->requestBuilderMock->expects($this->once())->method('build')->with($commandSubject)->willReturn($request); $this->transferBuilderMock->expects($this->once())->method('build')->with($request)->willReturn($transferO); $this->gatewayMock->expects($this->once())->method('placeRequest')->with($transferO)->willReturn($response); $this->responseHandlerMock->expects($this->once())->method('handle')->with($commandSubject, $response); $this->model->execute($commandSubject); }
public function testExecute() { $commandSubject = ['authorize']; $request = ['request_field1' => 'request_value1', 'request_field2' => 'request_value2']; $response = ['response_field1' => 'response_value1']; $validationResult = $this->getMockBuilder('Magento\\Payment\\Gateway\\Validator\\ResultInterface')->getMockForAbstractClass(); $transferO = $this->getMockBuilder('Magento\\Payment\\Gateway\\Http\\TransferInterface')->getMockForAbstractClass(); $this->requestBuilderMock->expects(static::once())->method('build')->with($commandSubject)->willReturn($request); $this->transferFactoryMock->expects(static::once())->method('create')->with($request)->willReturn($transferO); $this->clientMock->expects(static::once())->method('placeRequest')->with($transferO)->willReturn($response); $this->validatorMock->expects(static::once())->method('validate')->with(array_merge($commandSubject, ['response' => $response]))->willReturn($validationResult); $validationResult->expects(static::once())->method('isValid')->willReturn(true); $this->responseHandlerMock->expects(static::once())->method('handle')->with($commandSubject, $response); $this->model->execute($commandSubject); }
public function testExecuteValidationFail() { $this->setExpectedException('Magento\\Payment\\Gateway\\Command\\CommandException'); $commandSubject = ['authorize']; $request = ['request_field1' => 'request_value1', 'request_field2' => 'request_value2']; $response = ['response_field1' => 'response_value1']; $validationFailures = [__('Failure #1'), __('Failure #2')]; $validationResult = $this->getMockBuilder('Magento\\Payment\\Gateway\\Validator\\ResultInterface')->getMockForAbstractClass(); $transferO = $this->getMockBuilder('Magento\\Payment\\Gateway\\Http\\TransferInterface')->getMockForAbstractClass(); $this->requestBuilderMock->expects(static::once())->method('build')->with($commandSubject)->willReturn($request); $this->transferFactoryMock->expects(static::once())->method('create')->with($request)->willReturn($transferO); $this->clientMock->expects(static::once())->method('placeRequest')->with($transferO)->willReturn($response); $this->validatorMock->expects(static::once())->method('validate')->with(array_merge($commandSubject, ['response' => $response]))->willReturn($validationResult); $validationResult->expects(static::once())->method('isValid')->willReturn(false); $validationResult->expects(static::once())->method('getFailsDescription')->willReturn($validationFailures); $this->logger->expects(static::exactly(count($validationFailures)))->method('critical')->withConsecutive([$validationFailures[0]], [$validationFailures[1]]); $this->command->execute($commandSubject); }
/** * Create mock for gateway command object */ private function initCommandMock() { $this->command = $this->getMockBuilder(GatewayCommand::class)->disableOriginalConstructor()->setMethods(['execute'])->getMock(); $this->command->expects(static::once())->method('execute')->willReturn([]); }