66 lines
2.0 KiB
PHP
66 lines
2.0 KiB
PHP
<?php
|
|
|
|
namespace App\Tests\Entity;
|
|
|
|
use App\Entity\Bundesland;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class BundeslandTest extends TestCase
|
|
{
|
|
public function testBundeslandCreation(): void
|
|
{
|
|
$bundesland = new Bundesland();
|
|
$bundesland->setName('Bayern');
|
|
$bundesland->setGrunderwerbsteuer(3.5);
|
|
|
|
$this->assertEquals('Bayern', $bundesland->getName());
|
|
$this->assertEquals(3.5, $bundesland->getGrunderwerbsteuer());
|
|
}
|
|
|
|
public function testGrunderwerbsteuerValues(): void
|
|
{
|
|
$testCases = [
|
|
['Baden-Württemberg', 5.0],
|
|
['Bayern', 3.5],
|
|
['Berlin', 6.0],
|
|
['Brandenburg', 6.5],
|
|
['Bremen', 5.0],
|
|
['Hamburg', 5.5],
|
|
['Hessen', 6.0],
|
|
['Mecklenburg-Vorpommern', 6.0],
|
|
['Niedersachsen', 5.0],
|
|
['Nordrhein-Westfalen', 6.5],
|
|
['Rheinland-Pfalz', 5.0],
|
|
['Saarland', 6.5],
|
|
['Sachsen', 5.5],
|
|
['Sachsen-Anhalt', 5.0],
|
|
['Schleswig-Holstein', 6.5],
|
|
['Thüringen', 5.0],
|
|
];
|
|
|
|
foreach ($testCases as [$name, $steuer]) {
|
|
$bundesland = new Bundesland();
|
|
$bundesland->setName($name);
|
|
$bundesland->setGrunderwerbsteuer($steuer);
|
|
|
|
$this->assertEquals($name, $bundesland->getName());
|
|
$this->assertEquals($steuer, $bundesland->getGrunderwerbsteuer());
|
|
}
|
|
}
|
|
|
|
public function testMinMaxGrunderwerbsteuer(): void
|
|
{
|
|
// Niedrigster Satz: Bayern mit 3.5%
|
|
$bayern = new Bundesland();
|
|
$bayern->setName('Bayern');
|
|
$bayern->setGrunderwerbsteuer(3.5);
|
|
$this->assertEquals(3.5, $bayern->getGrunderwerbsteuer());
|
|
|
|
// Höchster Satz: Brandenburg, NRW, Saarland, SH mit 6.5%
|
|
$nrw = new Bundesland();
|
|
$nrw->setName('Nordrhein-Westfalen');
|
|
$nrw->setGrunderwerbsteuer(6.5);
|
|
$this->assertEquals(6.5, $nrw->getGrunderwerbsteuer());
|
|
}
|
|
}
|