SignUpTest.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Analytics\Test\Unit\Controller\Adminhtml\BIEssentials;
  7. use Magento\Analytics\Controller\Adminhtml\BIEssentials\SignUp;
  8. use Magento\Backend\Model\View\Result\RedirectFactory;
  9. use Magento\Framework\App\Config\ScopeConfigInterface;
  10. use Magento\Framework\Controller\Result\Redirect;
  11. use Magento\Framework\TestFramework\Unit\Helper\ObjectManager as ObjectManagerHelper;
  12. class SignUpTest extends \PHPUnit\Framework\TestCase
  13. {
  14. /**
  15. * @var ObjectManagerHelper
  16. */
  17. private $objectManagerHelper;
  18. /**
  19. * @var ScopeConfigInterface|\PHPUnit_Framework_MockObject_MockObject
  20. */
  21. private $configMock;
  22. /**
  23. * @var SignUp
  24. */
  25. private $signUpController;
  26. /**
  27. * @var RedirectFactory|\PHPUnit_Framework_MockObject_MockObject
  28. */
  29. private $resultRedirectFactoryMock;
  30. /**
  31. * @var Redirect|\PHPUnit_Framework_MockObject_MockObject
  32. */
  33. private $redirectMock;
  34. /**
  35. * @return void
  36. */
  37. protected function setUp()
  38. {
  39. $this->configMock = $this->getMockBuilder(ScopeConfigInterface::class)
  40. ->disableOriginalConstructor()
  41. ->getMock();
  42. $this->resultRedirectFactoryMock = $this->getMockBuilder(RedirectFactory::class)
  43. ->disableOriginalConstructor()
  44. ->getMock();
  45. $this->redirectMock = $this->getMockBuilder(Redirect::class)
  46. ->disableOriginalConstructor()
  47. ->getMock();
  48. $this->objectManagerHelper = new ObjectManagerHelper($this);
  49. $this->signUpController = $this->objectManagerHelper->getObject(
  50. SignUp::class,
  51. [
  52. 'config' => $this->configMock,
  53. 'resultRedirectFactory' => $this->resultRedirectFactoryMock
  54. ]
  55. );
  56. }
  57. /**
  58. * @return void
  59. */
  60. public function testExecute()
  61. {
  62. $urlBIEssentialsConfigPath = 'analytics/url/bi_essentials';
  63. $this->configMock->expects($this->once())
  64. ->method('getValue')
  65. ->with($urlBIEssentialsConfigPath)
  66. ->willReturn('value');
  67. $this->resultRedirectFactoryMock->expects($this->once())->method('create')->willReturn($this->redirectMock);
  68. $this->redirectMock->expects($this->once())->method('setUrl')->with('value')->willReturnSelf();
  69. $this->assertEquals($this->redirectMock, $this->signUpController->execute());
  70. }
  71. }