diff --git a/src/Util/ClassSourceManipulator.php b/src/Util/ClassSourceManipulator.php index cd6d8efa1..69e26765a 100644 --- a/src/Util/ClassSourceManipulator.php +++ b/src/Util/ClassSourceManipulator.php @@ -1199,6 +1199,8 @@ private function getEntityTypeHint($doctrineType): ?string return '\\'.\DateInterval::class; case 'object': + return 'object'; + case 'binary': case 'blob': default: diff --git a/tests/Util/ClassSourceManipulatorTest.php b/tests/Util/ClassSourceManipulatorTest.php index 7ddf2b356..732261026 100644 --- a/tests/Util/ClassSourceManipulatorTest.php +++ b/tests/Util/ClassSourceManipulatorTest.php @@ -318,6 +318,15 @@ public function getAddEntityFieldTests(): \Generator ], 'User_simple_prop_zero.php', ]; + + yield 'entity_add_object' => [ + 'User_simple.php', + 'someObject', + [ + 'type' => 'object', + ], + 'User_simple_object.php', + ]; } /** diff --git a/tests/Util/fixtures/add_entity_field/User_simple_object.php b/tests/Util/fixtures/add_entity_field/User_simple_object.php new file mode 100644 index 000000000..74730b8fa --- /dev/null +++ b/tests/Util/fixtures/add_entity_field/User_simple_object.php @@ -0,0 +1,34 @@ +id; + } + + public function getSomeObject(): ?object + { + return $this->someObject; + } + + public function setSomeObject(object $someObject): self + { + $this->someObject = $someObject; + + return $this; + } +} diff --git a/tests/Util/fixtures/add_entity_field/legacy/User_simple_object.php b/tests/Util/fixtures/add_entity_field/legacy/User_simple_object.php new file mode 100644 index 000000000..9a17bee32 --- /dev/null +++ b/tests/Util/fixtures/add_entity_field/legacy/User_simple_object.php @@ -0,0 +1,40 @@ +id; + } + + public function getSomeObject(): ?object + { + return $this->someObject; + } + + public function setSomeObject(object $someObject): self + { + $this->someObject = $someObject; + + return $this; + } +}