Example #1
0
 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);
 }
Example #2
0
 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([]);
 }