public function testGetDataCard() { $options = $this->options; $options['card'] = $this->card; $request = new CopyAndPayPurchaseRequest($this->getHttpClient(), $this->getHttpRequest()); $request->initialize($options); $data = $request->getData(); $this->assertTrue($request->getTestMode()); $this->assertSame('696a8f0fabffea91517d0eb0a0bf9c33', $data['SECURITY.SENDER']); $this->assertSame('52275ebaf361f20a76b038ba4c806991', $data['TRANSACTION.CHANNEL']); $this->assertSame('INTEGRATOR_TEST', $data['TRANSACTION.MODE']); $this->assertSame('SYNC', $data['TRANSACTION.RESPONSE']); $this->assertSame('1143238d620a572a726fe92eede0d1ab', $data['USER.LOGIN']); $this->assertSame('demo', $data['USER.PWD']); $this->assertSame('DB', $data['PAYMENT.TYPE']); $this->assertSame('12.35', $data['PRESENTATION.AMOUNT']); $this->assertSame('EUR', $data['PRESENTATION.CURRENCY']); $this->assertSame('1.0', $data['REQUEST.VERSION']); $this->assertSame('MR', $data['NAME.SALUTATION']); $this->assertSame('DR', $data['NAME.TITLE']); $this->assertSame('John', $data['NAME.GIVEN']); $this->assertSame('Tester', $data['NAME.FAMILY']); $this->assertSame('M', $data['NAME.SEX']); $this->assertSame('1974-05-20', $data['NAME.BIRTHDATE']); $this->assertSame('Company Name Inc.', $data['NAME.COMPANY']); $this->assertStringStartsWith('Main Street 1', $data['ADDRESS.STREET']); $this->assertStringEndsWith('Centre', $data['ADDRESS.STREET']); $this->assertSame("Main Street 1\nCentre", $data['ADDRESS.STREET']); $this->assertSame('New City', $data['ADDRESS.CITY']); $this->assertSame('AB1 23C', $data['ADDRESS.ZIP']); $this->assertSame('AT12', $data['ADDRESS.STATE']); $this->assertSame('AT', $data['ADDRESS.COUNTRY']); $this->assertSame('*****@*****.**', $data['CONTACT.EMAIL']); $this->assertSame('(+44) 01632 960 111', $data['CONTACT.PHONE']); $this->assertSame('+44-7700-900-222', $data['CONTACT.MOBILE']); $this->assertArrayNotHasKey('CONTACT.IP', $data); $this->assertSame('PASSPORT', $data['CUSTOMER.IDENTIFICATION.PAPER']); $this->assertSame('AB123 456 C7', $data['CUSTOMER.IDENTIFICATION.VALUE']); $this->assertSame('Mary', $data['CUSTOMER.SHIPPING.NAME.GIVEN']); $this->assertSame('Shopper', $data['CUSTOMER.SHIPPING.NAME.FAMILY']); $this->assertSame('DE', $data['CUSTOMER.SHIPPING.ADDRESS.COUNTRY']); $this->assertSame('DE1', $data['CUSTOMER.SHIPPING.ADDRESS.STATE']); $this->assertSame('Berlin', $data['CUSTOMER.SHIPPING.ADDRESS.CITY']); $this->assertSame('XY1 23Z', $data['CUSTOMER.SHIPPING.ADDRESS.ZIP']); $this->assertSame('Main Square 2', $data['CUSTOMER.SHIPPING.ADDRESS.STREET']); $this->assertSame('(+44) 01632 960 110', $data['CUSTOMER.SHIPPING.CONTACT.PHONE']); $this->assertSame('+44-7700-900-220', $data['CUSTOMER.SHIPPING.CONTACT.MOBILE']); $this->assertArrayNotHasKey('CUSTOMER.SHIPPING.CONTACT.EMAIL', $data); }