getDate()); self::assertNull($sut->getUser()); self::assertEquals('month', $sut->getView()); $user = new User(); $sut->setUser($user); self::assertSame($user, $sut->getUser()); $date = new \DateTimeImmutable('2025-08-13 12:13:14'); $sut->setDate($date); self::assertNotNull($sut->getDate()); self::assertEquals('2025-08-13 12:13:14', $sut->getDate()->format('Y-m-d H:i:s')); $sut->setView('foo'); self::assertEquals('month', $sut->getView()); } #[DataProvider('getTestData')] public function testSetView(string $value, string $expected): void { $sut = new CalendarQuery(); $sut->setView($value); self::assertEquals($expected, $sut->getView()); } /** * @return iterable> */ public static function getTestData(): iterable { yield ['agendaMonth', 'month']; yield ['agendaWeek', 'week']; yield ['agendaDay', 'day']; yield ['month', 'month']; yield ['week', 'week']; yield ['day', 'day']; yield ['foo', 'month']; } }