/** * @see RequestEntity::toArray() * @dataProvider providerTransactionMockData */ public function testToArray($type, $paymentMethod, $paymentCountry, $ipAddress, $cookie, $userAgent, $expiration) { $transaction = $this->object->getTransaction(); $transaction->setType($type)->setPaymentMethod($paymentMethod)->setPaymentCountry($paymentCountry)->setIpAddress($ipAddress)->setCookie($cookie)->setUserAgent($userAgent)->setExpiration($expiration); $this->object->setTransaction($transaction); $rs = $this->object->toArray(); $this->assertInternalType('array', $rs); $this->assertEquals(1, count($rs)); $this->assertArrayHasKey('transaction', $rs); $transaction = $rs['transaction']; $this->assertInternalType('array', $transaction); $this->assertEquals(11, count($transaction)); $this->assertArrayHasKey('expiration', $transaction); $this->assertEquals($expiration, $transaction['expiration']); $this->assertArrayHasKey('type', $transaction); $this->assertEquals($type, $transaction['type']); $this->assertArrayHasKey('paymentMethod', $transaction); $this->assertEquals($paymentMethod, $transaction['paymentMethod']); $this->assertArrayHasKey('paymentCountry', $transaction); $this->assertEquals($paymentCountry, $transaction['paymentCountry']); $this->assertArrayHasKey('ipAddress', $transaction); $this->assertEquals($ipAddress, $transaction['ipAddress']); $this->assertArrayHasKey('cookie', $transaction); $this->assertEquals($cookie, $transaction['cookie']); $this->assertArrayHasKey('userAgent', $transaction); $this->assertEquals($userAgent, $transaction['userAgent']); $this->assertArrayHasKey('order', $transaction); $this->assertInternalType('array', $transaction['order']); $this->assertArrayHasKey('creditCard', $transaction); $this->assertInternalType('array', $transaction['creditCard']); $this->assertArrayHasKey('payer', $transaction); $this->assertInternalType('array', $transaction['payer']); $this->assertArrayHasKey('extraParameters', $transaction); $this->assertInternalType('array', $transaction['extraParameters']); }