Example #1
0
 /**
  * @test
  */
 public function shouldAllowCreateAfterUrlWithFragment()
 {
     $authorizeToken = new Token();
     $tokenStorageMock = $this->createStorageMock();
     $tokenStorageMock->expects($this->at(0))->method('create')->will($this->returnValue($authorizeToken));
     $tokenStorageMock->expects($this->at(1))->method('update')->with($this->identicalTo($authorizeToken));
     $model = new \stdClass();
     $identity = new Identity('anId', 'stdClass');
     $gatewayName = 'theGatewayName';
     $modelStorage = $this->createStorageMock();
     $modelStorage->expects($this->once())->method('identify')->with($this->identicalTo($model))->will($this->returnValue($identity));
     $storageRegistryMock = $this->createStorageRegistryMock();
     $storageRegistryMock->expects($this->once())->method('getStorage')->with($this->identicalTo($model))->will($this->returnValue($modelStorage));
     $factory = new TokenFactory($tokenStorageMock, $storageRegistryMock, $this->createUrlGeneratorStub());
     $actualToken = $factory->createToken($gatewayName, $model, 'http://example.com/authorize.php', array(), 'http://google.com/foo/bar?foo=fooVal#fragment', array('payum_token' => null));
     $this->assertSame($authorizeToken, $actualToken);
     $this->assertEquals($gatewayName, $authorizeToken->getGatewayName());
     $this->assertSame($identity, $authorizeToken->getDetails());
     $this->assertEquals('http://example.com/authorize.php?payum_token=' . $authorizeToken->getHash(), $authorizeToken->getTargetUrl());
     $this->assertEquals('http://google.com/foo/bar?foo=fooVal#fragment', $authorizeToken->getAfterUrl());
 }
Example #2
0
 /**
  * @test
  */
 public function shouldCreateAuthorizeToken()
 {
     $authorizeToken = new Token();
     $afterToken = new Token();
     $tokenStorageMock = $this->createStorageMock();
     $tokenStorageMock->expects($this->at(0))->method('createModel')->will($this->returnValue($afterToken));
     $tokenStorageMock->expects($this->at(1))->method('updateModel')->with($this->identicalTo($afterToken));
     $tokenStorageMock->expects($this->at(2))->method('createModel')->will($this->returnValue($authorizeToken));
     $tokenStorageMock->expects($this->at(3))->method('updateModel')->with($this->identicalTo($authorizeToken));
     $tokenStorageMock->expects($this->at(4))->method('updateModel')->with($this->identicalTo($authorizeToken));
     $model = new \stdClass();
     $identificator = new Identificator('anId', 'stdClass');
     $paymentName = 'thePaymentName';
     $modelStorage = $this->createStorageMock();
     $modelStorage->expects($this->exactly(2))->method('getIdentificator')->with($this->identicalTo($model))->will($this->returnValue($identificator));
     $storageRegistryMock = $this->createStorageRegistryMock();
     $storageRegistryMock->expects($this->exactly(2))->method('getStorage')->with($this->identicalTo($model))->will($this->returnValue($modelStorage));
     $routerMock = $this->createUrlGeneratorMock();
     $routerMock->expects($this->at(0))->method('generate')->with('after', $this->isType('array'), true)->will($this->returnValue('theAfterUrl'));
     $routerMock->expects($this->at(1))->method('generate')->with('authorize', array('payum_token' => $authorizeToken->getHash()), true)->will($this->returnValue('theAuthorizeUrl'));
     $factory = new TokenFactory($routerMock, $tokenStorageMock, $storageRegistryMock, 'capture', 'notify', 'authorize');
     $actualToken = $factory->createAuthorizeToken($paymentName, $model, 'after', array('afterKey' => 'afterVal'));
     $this->assertSame($authorizeToken, $actualToken);
     $this->assertEquals($paymentName, $authorizeToken->getPaymentName());
     $this->assertSame($identificator, $authorizeToken->getDetails());
     $this->assertEquals('theAuthorizeUrl', $authorizeToken->getTargetUrl());
     $this->assertEquals('theAfterUrl', $authorizeToken->getAfterUrl());
 }