/** * @test */ public function testGetTransactionData() { $ipnData = "txn_data=notavailable"; $ipn = new PPIPNMessage($ipnData, array('mode' => 'sandbox')); $this->assertEquals('', $ipn->getTransactionId()); $ipnData = "txn_id=123&transaction_type=pay"; $ipn = new PPIPNMessage($ipnData, array('mode' => 'sandbox')); $this->assertEquals(123, $ipn->getTransactionId()); $this->assertEquals('pay', $ipn->getTransactionType()); $ipnData = "transaction[0].id=5&transaction[1].id=10"; $ipn = new PPIPNMessage($ipnData, array('mode' => 'sandbox')); $this->assertEquals(array(5, 10), $ipn->getTransactionId()); $ipnData = "txn_id=123&transaction[0].id=5&transaction[1].id=10"; $ipn = new PPIPNMessage($ipnData, array('mode' => 'sandbox')); $this->assertEquals(123, $ipn->getTransactionId()); }