rewrite methods for participation

This commit is contained in:
2021-05-10 13:21:28 +02:00
parent 8002725c87
commit f3a8552829
2 changed files with 49 additions and 8 deletions

View File

@@ -23,6 +23,7 @@
namespace Chill\PersonBundle\Tests\Entity;
use Chill\PersonBundle\Entity\AccompanyingPeriod;
use Chill\PersonBundle\Entity\AccompanyingPeriodParticipation;
use Chill\PersonBundle\Entity\Person;
class AccompanyingPeriodTest extends \PHPUnit\Framework\TestCase
@@ -83,10 +84,11 @@ class AccompanyingPeriodTest extends \PHPUnit\Framework\TestCase
$person3 = new Person();
$period = new AccompanyingPeriod(new \DateTime());
$period->addPerson($person);
$period->addPerson($person2);
$period->addPerson($person3);
$participation0 = $period->createParticipationFor($person);
$period->createParticipationFor($person2);
$period->createParticipationFor($person3);
$this->assertNotNull($participation0);
$this->assertEquals(3, $period->getParticipations()->count());
$this->assertTrue($period->containsPerson($person));
$this->assertFalse($period->containsPerson(new Person()));
@@ -95,13 +97,27 @@ class AccompanyingPeriodTest extends \PHPUnit\Framework\TestCase
$participations = $period->getParticipationsContainsPerson($person);
$this->assertNotNull($participation);
$this->assertSame($person, $participation->getPerson());
$this->assertSame($participation, $participation0);
$this->assertEquals(1, $participations->count());
$participationL = $period->removePerson($person);
$participationL = $period->closeParticipationFor($person);
$this->assertSame($participationL, $participation);
$this->assertTrue($participation->getEndDate() instanceof \DateTimeInterface);
$participation = $period->getOpenParticipationContainsPerson($person);
$this->assertNull($participation);
$person4 = new Person();
$participations4 = $period->getParticipationsContainsPerson($person4);
$this->assertEquals(0, $participations4->count());
$participation4 = $period->getOpenParticipationContainsPerson($person4);
$this->assertNull($participation4);
$period->addPerson($person4);
$this->assertInstanceOf(AccompanyingPeriodParticipation::class, $period->getOpenParticipationContainsPerson($person4));
$this->assertEquals(1, $period->getParticipationsContainsPerson($person4)->count());
$period->removePerson($person4);
$this->assertNull($period->getOpenParticipationContainsPerson($person4));
$this->assertEquals(1, $period->getParticipationsContainsPerson($person4)->count());
}
}