DefinitionFactoryTest.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Framework\ObjectManager\Test\Unit;
  7. use Magento\Framework\Filesystem\Driver\File;
  8. use Magento\Framework\ObjectManager\DefinitionFactory;
  9. use Magento\Framework\ObjectManager\DefinitionInterface;
  10. use Magento\Framework\Interception\DefinitionInterface as InterceptionDefinitionInterface;
  11. use Magento\Framework\ObjectManager\RelationsInterface;
  12. class DefinitionFactoryTest extends \PHPUnit\Framework\TestCase
  13. {
  14. /**
  15. * @var File|\PHPUnit_Framework_MockObject_MockObject
  16. */
  17. private $filesystemDriverMock;
  18. /**
  19. * @var DefinitionFactory
  20. */
  21. private $definitionFactory;
  22. protected function setUp()
  23. {
  24. $this->filesystemDriverMock = $this->createMock(File::class);
  25. $this->definitionFactory = new DefinitionFactory(
  26. $this->filesystemDriverMock,
  27. 'generation dir'
  28. );
  29. }
  30. public function testCreateClassDefinition()
  31. {
  32. $this->assertInstanceOf(
  33. DefinitionInterface::class,
  34. $this->definitionFactory->createClassDefinition()
  35. );
  36. }
  37. public function testCreatePluginDefinition()
  38. {
  39. $this->assertInstanceOf(
  40. InterceptionDefinitionInterface::class,
  41. $this->definitionFactory->createPluginDefinition()
  42. );
  43. }
  44. public function testCreateRelations()
  45. {
  46. $this->assertInstanceOf(
  47. RelationsInterface::class,
  48. $this->definitionFactory->createRelations()
  49. );
  50. }
  51. }