container->get(PresentationCounter::class); assert($counter instanceof PresentationCounter); $this->createPresentation( events: [ $this->createEvent( eventDate: Date::fromString('yesterday'), eventName: $this->randomString(), ), ], ); $this->assertGreaterThanOrEqual( actual: $counter->getPastCount(), expected: 1, ); } public function test_it_only_counts_published_events(): void { $counter = $this->container->get(PresentationCounter::class); assert($counter instanceof PresentationCounter); $count = $counter->getPastCount(); $this->createPresentation( events: [ $this->createEvent( eventDate: Date::fromString('yesterday'), eventName: $this->randomString(), ), ], isPublished: FALSE, ); $this->assertSame( actual: $counter->getPastCount(), expected: $count, ); } public function test_it_only_counts_past_events(): void { $counter = $this->container->get(PresentationCounter::class); assert($counter instanceof PresentationCounter); // Get the existing presentation count (including existing nodes). $originalCount = $counter->getPastCount(); $this->assertGreaterThanOrEqual( actual: $originalCount, expected: 0, ); $this->createPresentation( events: [ $this->createEvent( eventDate: Date::fromString('tomorrow'), eventName: $this->randomString(), ), $this->createEvent( eventDate: Date::fromString('yesterday'), eventName: $this->randomString(), ), ], ); $counter = $this->container->get(PresentationCounter::class); // Ensure the count has only increased by one, even though a future and past event were created. $this->assertSame( actual: $counter->getPastCount(), expected: $originalCount + 1, ); } }