Creating Participation refunds
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
|
||||
namespace Tests\Unit;
|
||||
|
||||
use App\Support\Iban;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
class IbanTest extends TestCase
|
||||
{
|
||||
public function test_normalizes_spaces_and_case(): void
|
||||
{
|
||||
$this->assertSame('DE02120300000000202051', Iban::normalize('de02 1203 0000 0000 2020 51'));
|
||||
$this->assertSame('DE02120300000000202051', Iban::normalize(" DE02\t1203000000002020 51 "));
|
||||
}
|
||||
|
||||
public function test_formats_in_groups_of_four(): void
|
||||
{
|
||||
$this->assertSame('DE02 1203 0000 0000 2020 51', Iban::format('DE02120300000000202051'));
|
||||
}
|
||||
|
||||
public function test_accepts_valid_ibans(): void
|
||||
{
|
||||
// Offizielle Testnummern der Deutschen Bundesbank bzw. der jeweiligen Zentralbanken.
|
||||
foreach ([
|
||||
'DE02120300000000202051',
|
||||
'DE02500105170137075030',
|
||||
'AT026000000001349870',
|
||||
'CH0209000000100013997',
|
||||
'FR1420041010050500013M02606',
|
||||
'NL02ABNA0123456789',
|
||||
] as $iban) {
|
||||
$this->assertTrue(Iban::isValid($iban), $iban . ' sollte gültig sein');
|
||||
}
|
||||
}
|
||||
|
||||
public function test_rejects_a_wrong_check_digit(): void
|
||||
{
|
||||
// Zahlendreher in den letzten beiden Stellen -- Struktur und Länge stimmen weiterhin.
|
||||
$this->assertFalse(Iban::isValid('DE02120300000000202015'));
|
||||
}
|
||||
|
||||
public function test_rejects_wrong_length_for_the_country(): void
|
||||
{
|
||||
$this->assertFalse(Iban::isValid('DE0212030000000020205'));
|
||||
$this->assertFalse(Iban::isValid('DE021203000000002020511'));
|
||||
}
|
||||
|
||||
public function test_rejects_malformed_input(): void
|
||||
{
|
||||
foreach (['', ' ', 'kein IBAN', '1202120300000000202051', 'DEAB120300000000202051'] as $iban) {
|
||||
$this->assertFalse(Iban::isValid($iban), $iban . ' sollte ungültig sein');
|
||||
}
|
||||
}
|
||||
|
||||
public function test_validates_the_normalized_form(): void
|
||||
{
|
||||
$this->assertTrue(Iban::isValid('de02 1203 0000 0000 2020 51'));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user