From 14b0d18b99ba16128101840ea964b255269e3a78 Mon Sep 17 00:00:00 2001 From: Yaroslav Rogoza Date: Wed, 25 Jul 2018 18:25:35 +0200 Subject: [PATCH 1/3] Added unit test for order success observer in GA --- ...ticsOnOrderSuccessPageViewObserverTest.php | 124 ++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php diff --git a/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php b/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php new file mode 100644 index 0000000000000..d1b1da51e87e9 --- /dev/null +++ b/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php @@ -0,0 +1,124 @@ +googleAnalyticsDataMock = $this->getMockBuilder(GaDataHelper::class) + ->disableOriginalConstructor() + ->getMock(); + $this->storeManagerMock = $this->getMockBuilder(StoreManagerInterface::class) + ->disableOriginalConstructor() + ->getMock(); + $this->layoutMock = $this->getMockBuilder(LayoutInterface::class) + ->disableOriginalConstructor() + ->getMock(); + $this->observerMock = $this->getMockBuilder(Observer::class)->getMock(); + $this->eventMock = $this->getMockBuilder(Event::class)->getMock(); + + + $objectManager = new ObjectManager($this); + + $this->orderSuccessObserver = $objectManager->getObject( + SetGoogleAnalyticsOnOrderSuccessPageViewObserver::class, + [ + 'storeManager' => $this->storeManagerMock, + 'layout' => $this->layoutMock, + 'googleAnalyticsData' => $this->googleAnalyticsDataMock + ] + ); + } + + public function testExecuteWithNoOrderIds() + { + $this->observerMock->expects($this->once()) + ->method('getEvent') + ->willReturn($this->eventMock); + $this->eventMock->expects($this->once()) + ->method('__call') + ->with( + $this->equalTo('getOrderIds') + ) + ->willReturn([]); + $this->layoutMock->expects($this->never()) + ->method('getBlock'); + + $this->orderSuccessObserver->execute($this->observerMock); + } + + public function testExecuteWithOrderIds() + { + $blockMock = $this->getMockBuilder(AbstractBlock::class) + ->disableOriginalConstructor() + ->getMock(); + $orderIds = [8]; + + $this->observerMock->expects($this->once()) + ->method('getEvent') + ->willReturn($this->eventMock); + $this->eventMock->expects($this->once()) + ->method('__call') + ->with( + $this->equalTo('getOrderIds') + ) + ->willReturn($orderIds); + $this->layoutMock->expects($this->once()) + ->method('getBlock') + ->willReturn($blockMock); + $blockMock->expects($this->once()) + ->method('__call') + ->with( + $this->equalTo('setOrderIds'), + $this->equalTo([$orderIds]) + ); + + $this->orderSuccessObserver->execute($this->observerMock); + } +} From 5f91a9e898cbc516617ee52ef23f2dabcecc6da3 Mon Sep 17 00:00:00 2001 From: Yaroslav Rogoza Date: Wed, 25 Jul 2018 18:28:47 +0200 Subject: [PATCH 2/3] Removed extra empty line --- .../SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php | 1 - 1 file changed, 1 deletion(-) diff --git a/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php b/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php index d1b1da51e87e9..34f71dd53391d 100644 --- a/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php +++ b/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php @@ -63,7 +63,6 @@ protected function setUp() $this->observerMock = $this->getMockBuilder(Observer::class)->getMock(); $this->eventMock = $this->getMockBuilder(Event::class)->getMock(); - $objectManager = new ObjectManager($this); $this->orderSuccessObserver = $objectManager->getObject( From 9524aeb06d2ab19cebae792f18f0ff3ded274189 Mon Sep 17 00:00:00 2001 From: Stanislav Idolov Date: Fri, 27 Jul 2018 09:06:05 +0300 Subject: [PATCH 3/3] ENGCOM-2537: GoogleAnalytics: Added unit test for order success observer #17137 --- .../SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php b/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php index 34f71dd53391d..b3ed16e0c94a2 100644 --- a/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php +++ b/app/code/Magento/GoogleAnalytics/Test/Unit/Observer/SetGoogleAnalyticsOnOrderSuccessPageViewObserverTest.php @@ -5,7 +5,7 @@ */ declare(strict_types=1); -namespace Magento\GoogleAnalytics\Test\Unit\Block; +namespace Magento\GoogleAnalytics\Test\Unit\Observer; use Magento\Framework\Event; use Magento\Framework\Event\Observer;