@@ -156,7 +156,7 @@ public static function legacyTypesProvider(): array
156156 {
157157 // DBAL 4 has a special fallback strategy for BINGINT (int -> string)
158158 if (!method_exists (BigIntType::class, 'getName ' )) {
159- $ expectedBingIntType = [new LegacyType (LegacyType::BUILTIN_TYPE_INT ), new Type (LegacyType::BUILTIN_TYPE_STRING )];
159+ $ expectedBingIntType = [new LegacyType (LegacyType::BUILTIN_TYPE_INT ), new LegacyType (LegacyType::BUILTIN_TYPE_STRING )];
160160 } else {
161161 $ expectedBingIntType = [new LegacyType (LegacyType::BUILTIN_TYPE_STRING )];
162162 }
@@ -298,9 +298,16 @@ public function testExtract(string $property, ?Type $type)
298298 */
299299 public static function typeProvider (): iterable
300300 {
301+ // DBAL 4 has a special fallback strategy for BINGINT (int -> string)
302+ if (!method_exists (BigIntType::class, 'getName ' )) {
303+ $ expectedBigIntType = Type::collection (Type::int (), Type::string ());
304+ } else {
305+ $ expectedBigIntType = Type::string ();
306+ }
307+
301308 yield ['id ' , Type::int ()];
302309 yield ['guid ' , Type::string ()];
303- yield ['bigint ' , Type:: string () ];
310+ yield ['bigint ' , $ expectedBigIntType ];
304311 yield ['time ' , Type::object (\DateTime::class)];
305312 yield ['timeImmutable ' , Type::object (\DateTimeImmutable::class)];
306313 yield ['dateInterval ' , Type::object (\DateInterval::class)];
0 commit comments