prophesize(ResidentialAddressRepository::class); $residentialAddressRepository ->findCurrentResidentialAddressByPerson(Argument::type(Person::class), Argument::any()) ->willReturn([]); $this->normalizer = $this->buildPersonJsonNormalizer( self::$container->get(ChillEntityRenderExtension::class), self::$container->get(PersonRepository::class), self::$container->get(CenterResolverManagerInterface::class), $residentialAddressRepository->reveal(), self::$container->get(PhoneNumberHelperInterface::class), self::$container->get(NormalizerInterface::class) ); } public function testNormalization() { $person = new Person(); $result = $this->normalizer->normalize($person, 'json', [AbstractNormalizer::GROUPS => ['read']]); $this->assertIsArray($result); } private function buildPersonJsonNormalizer( ChillEntityRenderExtension $render, PersonRepository $repository, CenterResolverManagerInterface $centerResolverManager, ResidentialAddressRepository $residentialAddressRepository, PhoneNumberHelperInterface $phoneNumberHelper, NormalizerInterface $normalizer ): PersonJsonNormalizer { $personJsonNormalizer = new PersonJsonNormalizer( $render, $repository, $centerResolverManager, $residentialAddressRepository, $phoneNumberHelper ); $personJsonNormalizer->setNormalizer($normalizer); return $personJsonNormalizer; } }