From 1033ef35e9fd2ced902a736eb7f32f260a695a91 Mon Sep 17 00:00:00 2001 From: Kamil Kokot Date: Tue, 12 Jan 2021 22:34:07 +0100 Subject: [PATCH] [ApiBundle] Fix ViewEvent mocking in specs --- .../ProductSlugEventSubscriberSpec.php | 45 ++++++++++--------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/src/Sylius/Bundle/ApiBundle/spec/EventSubscriber/ProductSlugEventSubscriberSpec.php b/src/Sylius/Bundle/ApiBundle/spec/EventSubscriber/ProductSlugEventSubscriberSpec.php index 30996bd5e1..9dd17fed07 100644 --- a/src/Sylius/Bundle/ApiBundle/spec/EventSubscriber/ProductSlugEventSubscriberSpec.php +++ b/src/Sylius/Bundle/ApiBundle/spec/EventSubscriber/ProductSlugEventSubscriberSpec.php @@ -21,6 +21,7 @@ use Sylius\Component\Core\Model\ProductTranslationInterface; use Sylius\Component\Product\Generator\SlugGeneratorInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpKernel\Event\ViewEvent; +use Symfony\Component\HttpKernel\HttpKernelInterface; final class ProductSlugEventSubscriberSpec extends ObjectBehavior { @@ -33,11 +34,9 @@ final class ProductSlugEventSubscriberSpec extends ObjectBehavior SlugGeneratorInterface $slugGenerator, ProductInterface $product, ProductTranslationInterface $productTranslation, - Request $request, - ViewEvent $event + HttpKernelInterface $kernel, + Request $request ): void { - $event->getControllerResult()->willReturn($product); - $event->getRequest()->willReturn($request); $request->getMethod()->willReturn(Request::METHOD_POST); $product->getTranslations()->willReturn(new ArrayCollection([$productTranslation->getWrappedObject()])); @@ -47,20 +46,22 @@ final class ProductSlugEventSubscriberSpec extends ObjectBehavior $slugGenerator->generate('Audi RS7')->willReturn('audi-rs7'); $productTranslation->setSlug('audi-rs7')->shouldBeCalled(); - $event->setControllerResult($product)->shouldBeCalled(); - $this->generateSlug($event); + $this->generateSlug(new ViewEvent( + $kernel->getWrappedObject(), + $request->getWrappedObject(), + HttpKernelInterface::MASTER_REQUEST, + $product->getWrappedObject() + )); } function it_does_nothing_if_the_product_has_slug( SlugGeneratorInterface $slugGenerator, ProductInterface $product, ProductTranslationInterface $productTranslation, - Request $request, - ViewEvent $event + HttpKernelInterface $kernel, + Request $request ): void { - $event->getControllerResult()->willReturn($product); - $event->getRequest()->willReturn($request); $request->getMethod()->willReturn(Request::METHOD_POST); $product->getTranslations()->willReturn(new ArrayCollection([$productTranslation->getWrappedObject()])); @@ -70,20 +71,21 @@ final class ProductSlugEventSubscriberSpec extends ObjectBehavior $slugGenerator->generate(Argument::any())->shouldNotBeCalled(); $productTranslation->setSlug(Argument::any())->shouldNotBeCalled(); - $event->setControllerResult($product)->shouldBeCalled(); - - $this->generateSlug($event); + $this->generateSlug(new ViewEvent( + $kernel->getWrappedObject(), + $request->getWrappedObject(), + HttpKernelInterface::MASTER_REQUEST, + $product->getWrappedObject() + )); } function it_does_nothing_if_the_product_has_no_name( SlugGeneratorInterface $slugGenerator, ProductInterface $product, ProductTranslationInterface $productTranslation, - Request $request, - ViewEvent $event + HttpKernelInterface $kernel, + Request $request ): void { - $event->getControllerResult()->willReturn($product); - $event->getRequest()->willReturn($request); $request->getMethod()->willReturn(Request::METHOD_POST); $product->getTranslations()->willReturn(new ArrayCollection([$productTranslation->getWrappedObject()])); @@ -93,8 +95,11 @@ final class ProductSlugEventSubscriberSpec extends ObjectBehavior $slugGenerator->generate(Argument::any())->shouldNotBeCalled(); $productTranslation->setSlug(Argument::any())->shouldNotBeCalled(); - $event->setControllerResult($product)->shouldBeCalled(); - - $this->generateSlug($event); + $this->generateSlug(new ViewEvent( + $kernel->getWrappedObject(), + $request->getWrappedObject(), + HttpKernelInterface::MASTER_REQUEST, + $product->getWrappedObject() + )); } }