public function testParserInvalidZRecord() { $dates = strftime("%d%m%y00%d%m%y", time()); $teststring = '0256Q160500003503007767SENDERS NAME ' . ' ' . ' ' . $dates . 'N0000000000 ' . ' ' . '0768T16050000EUR350300776700000000000000 0000000000RZTIAT22263' . ' ' . ' ' . ' DE RECEIVERS NAME ' . ' ' . ' ' . ' /DE21700519950000007229 ' . ' EUR00000000000123450TEST-VERWENDUNGSZWECK ' . ' ' . ' 00000000 ' . ' 0013 ' . ' 0 00' . '0768T16050000EUR350300776700000000000000 0000000000RZTIAT22263' . ' ' . ' ' . ' DE SECOND RECEIVERS NAME ' . ' ' . ' ' . ' /DE21700519950000007229 ' . ' EUR00000000000234560TEST2 ' . ' ' . ' 00000000 ' . ' 0013 ' . ' 0 00' . '0256Z000000000000357000000000000002 ' . ' blubb ' . ' ' . ' '; $dtazv = new DTAZV($teststring); $this->assertSame(2, $dtazv->count()); $errors = $dtazv->getParsingErrors(); // first error for skipped C record, second error for checksum $this->assertEquals('Payment_DTA_ParseException', get_class($errors[0])); }