Ensure the correct event is returned
This commit is contained in:
parent
4715d02ae0
commit
08fc6c66be
3 changed files with 28 additions and 5 deletions
|
@ -17,6 +17,10 @@ readonly final class EventCollection implements \IteratorAggregate {
|
|||
public function __construct(private array $events) {
|
||||
}
|
||||
|
||||
public function first(): ParagraphInterface {
|
||||
return array_values($this->events)[0];
|
||||
}
|
||||
|
||||
public function getIterator(): \Traversable {
|
||||
return new \ArrayIterator($this->events);
|
||||
}
|
||||
|
|
|
@ -14,15 +14,33 @@ final class PresentationTest extends ExistingSiteBase {
|
|||
public function test_only_past_events_are_returned(): void {
|
||||
$presentation = $this->createPresentation(
|
||||
events: [
|
||||
$this->createEvent(eventDate: 'now'),
|
||||
$this->createEvent(eventDate: 'yesterday'),
|
||||
$this->createEvent(eventDate: 'tomorrow'),
|
||||
$this->createEvent(
|
||||
eventDate: 'now',
|
||||
eventName: 'now',
|
||||
),
|
||||
|
||||
$this->createEvent(
|
||||
eventDate: 'yesterday',
|
||||
eventName: 'yesterday',
|
||||
),
|
||||
|
||||
$this->createEvent(
|
||||
eventDate: 'tomorrow',
|
||||
eventName: 'tomorrow',
|
||||
),
|
||||
],
|
||||
);
|
||||
|
||||
$events = $presentation->getPastEvents();
|
||||
|
||||
$this->assertCount(
|
||||
expectedCount: 1,
|
||||
haystack: $presentation->getPastEvents(),
|
||||
haystack: $events,
|
||||
);
|
||||
|
||||
$this->assertSame(
|
||||
actual: $events->first()->get('field_event_name')->value,
|
||||
expected: 'yesterday',
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -28,10 +28,11 @@ trait PresentationCreationTrait {
|
|||
return $presentation;
|
||||
}
|
||||
|
||||
private function createEvent(string $eventDate): ParagraphInterface {
|
||||
private function createEvent(string $eventName, string $eventDate): ParagraphInterface {
|
||||
return Paragraph::create(
|
||||
[
|
||||
'field_date' => (new DrupalDateTime($eventDate))->getTimestamp(),
|
||||
'field_event_name' => $eventName,
|
||||
'type' => 'event',
|
||||
],
|
||||
);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue