public function testIdealPayment()
 {
     $payment = new Ideal();
     $payment->setPurchaseId(uniqid());
     $payment->setEntranceCode(uniqid());
     $payment->setAmount(100);
     $payment->setDescription(uniqid('phpunit-', true));
     // Ideal specific methods
     $directoryResult = $payment->getAvailableIssuers($this->client);
     $issuers = $directoryResult->getIssuers();
     $this->assertEquals(1, count($issuers));
     $directoryRequest = new DirectoryRequest($this->client);
     $this->assertEquals($directoryRequest->execute(), $directoryResult);
     /** @var IssuerResult $issuer */
     $issuer = reset($issuers);
     $this->assertEquals(99, $issuer->getIssuerId());
     $this->assertEquals('Sisow Bank (test)', $issuer->getIssuerName());
     // Ideal specific settings
     $payment->setIssuerId($issuer->getIssuerId());
     $transactionRequest = new TransactionRequest($this->client, $payment);
     $requestResult = $transactionRequest->execute();
     $this->assertNotEmpty($requestResult->getTransactionId());
     $this->assertNotEmpty($requestResult->getIssuerUrl());
     $statusRequest = new StatusRequest($this->client, $requestResult->getTransactionId());
     $statusResult = $statusRequest->execute();
     $this->assertEquals('Open', $statusResult->getStatus());
 }
Example #2
0
 /**
  * @param Client $client
  * @return DirectoryRequestResult
  */
 public function getAvailableIssuers(Client $client)
 {
     $directoryRequest = new DirectoryRequest($client);
     return $directoryRequest->execute();
 }