SessionManagerTest.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. // @codingStandardsIgnoreStart
  7. namespace {
  8. $mockPHPFunctions = false;
  9. }
  10. namespace Magento\Framework\Session\Test\Unit {
  11. // @codingStandardsIgnoreEnd
  12. /**
  13. * Test SessionManager
  14. *
  15. */
  16. class SessionManagerTest extends \PHPUnit\Framework\TestCase
  17. {
  18. const SESSION_USE_ONLY_COOKIES = 'session.use_only_cookies';
  19. const SESSION_USE_ONLY_COOKIES_ENABLE = '1';
  20. /**
  21. * @var \Magento\Framework\TestFramework\Unit\Helper\ObjectManager
  22. */
  23. private $objectManager;
  24. /**
  25. * @var \Magento\Framework\Session\SessionManager
  26. */
  27. private $sessionManager;
  28. /**
  29. * @var \Magento\Framework\Session\Config\ConfigInterface | \PHPUnit_Framework_MockObject_MockObject
  30. */
  31. private $mockSessionConfig;
  32. /**
  33. * @var \Magento\Framework\Stdlib\CookieManagerInterface | \PHPUnit_Framework_MockObject_MockObject
  34. */
  35. private $mockCookieManager;
  36. /**
  37. * @var \Magento\Framework\Stdlib\Cookie\CookieMetadataFactory | \PHPUnit_Framework_MockObject_MockObject
  38. */
  39. private $mockCookieMetadataFactory;
  40. /**
  41. * @var bool
  42. */
  43. public static $isIniSetInvoked;
  44. protected function setUp()
  45. {
  46. $this->markTestSkipped('To be fixed in MAGETWO-34751');
  47. global $mockPHPFunctions;
  48. require_once __DIR__ . '/_files/mock_ini_set.php';
  49. require_once __DIR__ . '/_files/mock_session_regenerate_id.php';
  50. $mockPHPFunctions = true;
  51. $this->mockSessionConfig = $this->getMockBuilder(\Magento\Framework\Session\Config\ConfigInterface::class)
  52. ->disableOriginalConstructor()
  53. ->getMock();
  54. $this->mockCookieManager = $this->createMock(\Magento\Framework\Stdlib\CookieManagerInterface::class);
  55. $this->mockCookieMetadataFactory = $this->getMockBuilder(
  56. \Magento\Framework\Stdlib\Cookie\CookieMetadataFactory::class
  57. )
  58. ->disableOriginalConstructor()
  59. ->getMock();
  60. $this->objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
  61. $arguments = [
  62. 'sessionConfig' => $this->mockSessionConfig,
  63. 'cookieManager' => $this->mockCookieManager,
  64. 'cookieMetadataFactory' => $this->mockCookieMetadataFactory,
  65. ];
  66. $this->sessionManager = $this->objectManager->getObject(
  67. \Magento\Framework\Session\SessionManager::class,
  68. $arguments
  69. );
  70. }
  71. public function testSessionManagerConstructor()
  72. {
  73. self::$isIniSetInvoked = false;
  74. $this->objectManager->getObject(\Magento\Framework\Session\SessionManager::class);
  75. $this->assertTrue(SessionManagerTest::$isIniSetInvoked);
  76. }
  77. }
  78. }