$enum */ #[Test, DataProvider('provideEnums')] public function enumValuesReturnsExpectedValueForEnum(string $enum, array $expectedValues): void { self::assertEquals($expectedValues, enumValues($enum)); } public static function provideEnums(): iterable { yield EnvVars::class => [ EnvVars::class, array_map(static fn (EnvVars $envVar) => $envVar->value, EnvVars::cases()), ]; yield VisitType::class => [ VisitType::class, array_map(static fn (VisitType $envVar) => $envVar->value, VisitType::cases()), ]; yield DeviceType::class => [ DeviceType::class, array_map(static fn (DeviceType $envVar) => $envVar->value, DeviceType::cases()), ]; yield OrderableField::class => [ OrderableField::class, array_map(static fn (OrderableField $envVar) => $envVar->value, OrderableField::cases()), ]; } }