From 63560cfbe2169c9ff72d06f758e8eb8a7f9a310b Mon Sep 17 00:00:00 2001 From: edalzell Date: Mon, 3 Mar 2025 11:44:45 -0800 Subject: [PATCH 1/3] add test for end to match start --- tests/Unit/MultiDayEventsTest.php | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/Unit/MultiDayEventsTest.php b/tests/Unit/MultiDayEventsTest.php index 48a0b78..5cddc70 100755 --- a/tests/Unit/MultiDayEventsTest.php +++ b/tests/Unit/MultiDayEventsTest.php @@ -118,6 +118,23 @@ public function canGetStart() ); } + #[Test] + public function canGetEnd() + { + $this->assertEquals( + Carbon::parse('2019-11-25 15:00')->shiftTimezone('America/Vancouver'), + $this->event->end() + ); + $this->assertEquals( + Carbon::parse('2019-11-21 23:59:59.999999')->shiftTimezone('America/Vancouver'), + $this->allDayEvent->end() + ); + $this->assertEquals( + Carbon::parse('2019-11-21 23:59:00')->shiftTimezone('America/Vancouver')->timezone, + $this->event->end()->timezone + ); + } + #[Test] public function noOccurrencesIfNowAfterEndDate() { From 6996041d6ddda63d456af4cb52d7923b2288ef3c Mon Sep 17 00:00:00 2001 From: edalzell Date: Mon, 3 Mar 2025 12:01:55 -0800 Subject: [PATCH 2/3] unorder them --- tests/Unit/MultiDayEventsTest.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/Unit/MultiDayEventsTest.php b/tests/Unit/MultiDayEventsTest.php index 5cddc70..eca8184 100755 --- a/tests/Unit/MultiDayEventsTest.php +++ b/tests/Unit/MultiDayEventsTest.php @@ -32,11 +32,6 @@ protected function setUp(): void ->data([ 'recurrence' => 'multi_day', 'days' => [ - [ - 'date' => '2019-11-23', - 'start_time' => '19:00', - 'end_time' => '21:00', - ], [ 'date' => '2019-11-24', 'start_time' => '11:00', @@ -47,6 +42,11 @@ protected function setUp(): void 'start_time' => '11:00', 'end_time' => '15:00', ], + [ + 'date' => '2019-11-23', + 'start_time' => '19:00', + 'end_time' => '21:00', + ], ], 'timezone' => 'America/Vancouver', ]); From 016a2b2a198871ccd76d852024addc662e987e07 Mon Sep 17 00:00:00 2001 From: edalzell Date: Mon, 3 Mar 2025 12:02:03 -0800 Subject: [PATCH 3/3] pass tests --- src/Types/MultiDayEvent.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Types/MultiDayEvent.php b/src/Types/MultiDayEvent.php index 2f0485a..876ee8a 100644 --- a/src/Types/MultiDayEvent.php +++ b/src/Types/MultiDayEvent.php @@ -22,6 +22,7 @@ public function __construct(Entry $event, private bool $collapseMultiDays) parent::__construct($event); $this->days = collect($this->event->days) + ->sortBy('date') ->map(fn (Values $day) => new Day( $day->all(), $this->timezone['timezone'],