ActivityTest.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Security\Test\Unit\Controller\Adminhtml\Session;
  7. use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
  8. use Magento\Framework\DataObject;
  9. use Magento\Framework\Phrase;
  10. /**
  11. * Test class for \Magento\Security\Controller\Adminhtml\Session\Activity testing
  12. *
  13. * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  14. */
  15. class ActivityTest extends \PHPUnit\Framework\TestCase
  16. {
  17. /**
  18. * @var \Magento\Security\Controller\Adminhtml\Session\Activity
  19. */
  20. protected $controller;
  21. /**
  22. * @var \Magento\Backend\App\Action\Context
  23. */
  24. protected $contextMock;
  25. /**
  26. * @var \Magento\Framework\App\ViewInterface
  27. */
  28. protected $viewMock;
  29. /**
  30. * @var \Magento\Framework\TestFramework\Unit\Helper\ObjectManager
  31. */
  32. protected $objectManager;
  33. /**
  34. * Init mocks for tests
  35. * @return void
  36. */
  37. public function setUp()
  38. {
  39. $this->objectManager = new ObjectManager($this);
  40. $this->contextMock = $this->getMockBuilder(\Magento\Backend\App\Action\Context::class)
  41. ->disableOriginalConstructor()
  42. ->getMock();
  43. $this->viewMock = $this->createMock(\Magento\Framework\App\ViewInterface::class);
  44. $this->contextMock->expects($this->any())
  45. ->method('getView')
  46. ->will($this->returnValue($this->viewMock));
  47. $this->controller = $this->objectManager->getObject(
  48. \Magento\Security\Controller\Adminhtml\Session\Activity::class,
  49. [
  50. 'context' => $this->contextMock
  51. ]
  52. );
  53. }
  54. /**
  55. * @return void
  56. */
  57. public function testExecute()
  58. {
  59. $titleMock = $this->getMockBuilder(\Magento\Framework\View\Page\Title::class)
  60. ->disableOriginalConstructor()
  61. ->getMock();
  62. $titleMock
  63. ->expects($this->once())
  64. ->method('prepend')
  65. ->with(new Phrase('Account Activity'));
  66. $this->viewMock
  67. ->expects($this->any())
  68. ->method('getPage')
  69. ->willReturn(
  70. new DataObject(
  71. ['config' => new DataObject(
  72. ['title' => $titleMock]
  73. )]
  74. )
  75. );
  76. $this->controller->execute();
  77. }
  78. }