Files
immorechner/tests/Entity/BundeslandTest.php
2025-11-08 23:44:33 +01:00

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());
}
}