/**
  * @dataProvider specialCharsDataProvider
  */
 public function testGetDataWithUrlsWithSpecialChars($xml)
 {
     $this->request->setReturnUrl('http://localhost/?one=1&two=2');
     $this->request->setCancelUrl('http://localhost/?one=1&two=2');
     $this->request->setNotifyUrl('http://localhost/?one=1&two=2');
     $data = $this->request->getData();
     $this->assertInstanceOf('SimpleXMLElement', $data);
     // Just so the provider remains readable...
     $dom = dom_import_simplexml($data)->ownerDocument;
     $dom->formatOutput = true;
     $this->assertEquals($xml, $dom->saveXML());
 }
 public function testDataIntegrity()
 {
     $this->assertEquals('123456789', $this->request->getGoogleAnalyticsCode());
     $this->assertEquals('EUR', $this->request->getCurrency());
     $this->assertEquals('extra data 1', $this->request->getVar1());
     $this->assertEquals('extra data 2', $this->request->getVar2());
     $this->assertEquals('extra data 3', $this->request->getVar3());
     $this->assertEquals('http://localhost/cancel', $this->request->getCancelUrl());
     $this->assertEquals('http://localhost/notify', $this->request->getNotifyUrl());
     $this->assertEquals('http://localhost/return', $this->request->getReturnUrl());
     $this->assertEquals('IDEAL', $this->request->getGateway());
     $this->assertEquals('redirect', $this->request->getType());
     $this->assertEquals('Test transaction', $this->request->getDescription());
     $this->assertEquals('TEST-TRANS-1', $this->request->getTransactionId());
     $this->assertEquals(10.0, $this->request->getAmount());
     $this->assertEquals(3, $this->request->getDaysActive());
     $this->assertFalse($this->request->getCloseWindow());
     $this->assertFalse($this->request->getManual());
     $this->assertTrue($this->request->getSendMail());
 }