Skip to content

Commit 90bbfe5

Browse files
committed
MAGETWO-35196: Remove Test\Unit from cached DI configuration, as it brings performance degradation
- refactored classes scanner decorators to match new interface
1 parent 051fc59 commit 90bbfe5

File tree

13 files changed

+70
-32
lines changed

13 files changed

+70
-32
lines changed

dev/tools/Magento/Tools/Di/App/Task/Operation/Area.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ class Area implements OperationInterface
1818
private $areaList;
1919

2020
/**
21-
* @var \Magento\Tools\Di\Code\Reader\InstancesNamesList\Area
21+
* @var \Magento\Tools\Di\Code\Reader\Decorator\Area
2222
*/
2323
private $areaInstancesNamesList;
2424

@@ -44,15 +44,15 @@ class Area implements OperationInterface
4444

4545
/**
4646
* @param App\AreaList $areaList
47-
* @param \Magento\Tools\Di\Code\Reader\InstancesNamesList\Area $areaInstancesNamesList
47+
* @param \Magento\Tools\Di\Code\Reader\Decorator\Area $areaInstancesNamesList
4848
* @param Config\Reader $configReader
4949
* @param Config\WriterInterface $configWriter
5050
* @param \Magento\Tools\Di\Compiler\Config\ModificationChain $modificationChain
5151
* @param array $data
5252
*/
5353
public function __construct(
5454
App\AreaList $areaList,
55-
\Magento\Tools\Di\Code\Reader\InstancesNamesList\Area $areaInstancesNamesList,
55+
\Magento\Tools\Di\Code\Reader\Decorator\Area $areaInstancesNamesList,
5656
Config\Reader $configReader,
5757
Config\WriterInterface $configWriter,
5858
Config\ModificationChain $modificationChain,

dev/tools/Magento/Tools/Di/App/Task/Operation/InterceptionCache.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,18 +20,18 @@ class InterceptionCache implements OperationInterface
2020
private $configInterface;
2121

2222
/**
23-
* @var \Magento\Tools\Di\Code\Reader\InstancesNamesList\Interceptions
23+
* @var \Magento\Tools\Di\Code\Reader\Decorator\Interceptions
2424
*/
2525
private $interceptionsInstancesNamesList;
2626

2727
/**
2828
* @param \Magento\Framework\Interception\Config\Config $configInterface
29-
* @param \Magento\Tools\Di\Code\Reader\InstancesNamesList\Interceptions $interceptionsInstancesNamesList
29+
* @param \Magento\Tools\Di\Code\Reader\Decorator\Interceptions $interceptionsInstancesNamesList
3030
* @param array $data
3131
*/
3232
public function __construct(
3333
\Magento\Framework\Interception\Config\Config $configInterface,
34-
\Magento\Tools\Di\Code\Reader\InstancesNamesList\Interceptions $interceptionsInstancesNamesList,
34+
\Magento\Tools\Di\Code\Reader\Decorator\Interceptions $interceptionsInstancesNamesList,
3535
array $data = []
3636
) {
3737
$this->configInterface = $configInterface;

dev/tools/Magento/Tools/Di/Code/Reader/ClassesScanner.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
use Magento\Framework\Filesystem\FilesystemException;
99
use Zend\Code\Scanner\FileScanner;
1010

11-
class ClassesScanner
11+
class ClassesScanner implements ClassesScannerInterface
1212
{
1313
/**
1414
* @var array

dev/tools/Magento/Tools/Di/Code/Reader/InstancesNamesListInterface.php renamed to dev/tools/Magento/Tools/Di/Code/Reader/ClassesScannerInterface.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
namespace Magento\Tools\Di\Code\Reader;
77

88
/**
9-
* Interface InstancesNamesList
9+
* Interface ClassesScannerInterface
1010
*
1111
* @package Magento\Tools\Di\Code\Reader
1212
*/
13-
interface InstancesNamesListInterface
13+
interface ClassesScannerInterface
1414
{
1515

1616
/**
@@ -21,4 +21,12 @@ interface InstancesNamesListInterface
2121
* @return array
2222
*/
2323
public function getList($path);
24+
25+
/**
26+
* Adds exclude patterns
27+
*
28+
* @param array $excludePatterns
29+
* @return void
30+
*/
31+
public function addExcludePatterns(array $excludePatterns);
2432
}

dev/tools/Magento/Tools/Di/Code/Reader/InstancesNamesList/Area.php renamed to dev/tools/Magento/Tools/Di/Code/Reader/Decorator/Area.php

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* Copyright © 2015 Magento. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6-
namespace Magento\Tools\Di\Code\Reader\InstancesNamesList;
6+
namespace Magento\Tools\Di\Code\Reader\Decorator;
77

88
use Magento\Tools\Di\Code\Reader\ClassesScanner;
99
use Magento\Tools\Di\Code\Reader\ClassReaderDecorator;
@@ -12,9 +12,9 @@
1212
/**
1313
* Class Area
1414
*
15-
* @package Magento\Tools\Di\Code\Reader\InstancesNamesList
15+
* @package Magento\Tools\Di\Code\Reader\Decorator
1616
*/
17-
class Area implements \Magento\Tools\Di\Code\Reader\InstancesNamesListInterface
17+
class Area implements \Magento\Tools\Di\Code\Reader\ClassesScannerInterface
1818
{
1919
/**
2020
* @var ClassReaderDecorator
@@ -38,6 +38,16 @@ public function __construct(
3838
$this->classesScanner = $classesScanner;
3939
}
4040

41+
/**
42+
* Adds exclude patterns
43+
*
44+
* @param array $excludePatterns
45+
* @return void
46+
*/
47+
public function addExcludePatterns(array $excludePatterns)
48+
{
49+
}
50+
4151
/**
4252
* Retrieves list of classes for given path
4353
*

dev/tools/Magento/Tools/Di/Code/Reader/InstancesNamesList/Directory.php renamed to dev/tools/Magento/Tools/Di/Code/Reader/Decorator/Directory.php

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,16 @@
33
* Copyright © 2015 Magento. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6-
namespace Magento\Tools\Di\Code\Reader\InstancesNamesList;
6+
namespace Magento\Tools\Di\Code\Reader\Decorator;
77

88
use Magento\Tools\Di\Compiler\Log\Log;
99

1010
/**
1111
* Class Directory
1212
*
13-
* @package Magento\Tools\Di\Code\Reader\InstancesNamesList
13+
* @package Magento\Tools\Di\Code\Reader\Decorator
1414
*/
15-
class Directory implements \Magento\Tools\Di\Code\Reader\InstancesNamesListInterface
15+
class Directory implements \Magento\Tools\Di\Code\Reader\ClassesScannerInterface
1616
{
1717
/**
1818
* @var string
@@ -80,6 +80,16 @@ public function errorHandler($errorNumber, $msg)
8080
$this->log->add(Log::COMPILATION_ERROR, $this->current, '#' . $errorNumber . ' ' . $msg);
8181
}
8282

83+
/**
84+
* Adds exclude patterns
85+
*
86+
* @param array $excludePatterns
87+
* @return void
88+
*/
89+
public function addExcludePatterns(array $excludePatterns)
90+
{
91+
}
92+
8393
/**
8494
* Retrieves list of classes for given path
8595
*

dev/tools/Magento/Tools/Di/Code/Reader/InstancesNamesList/Interceptions.php renamed to dev/tools/Magento/Tools/Di/Code/Reader/Decorator/Interceptions.php

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,16 @@
33
* Copyright © 2015 Magento. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6-
namespace Magento\Tools\Di\Code\Reader\InstancesNamesList;
6+
namespace Magento\Tools\Di\Code\Reader\Decorator;
77

88
use Magento\Tools\Di\Compiler\Log\Log;
99

1010
/**
1111
* Class Interceptions
1212
*
13-
* @package Magento\Tools\Di\Code\Reader\InstancesNamesList
13+
* @package Magento\Tools\Di\Code\Reader\Decorator
1414
*/
15-
class Interceptions implements \Magento\Tools\Di\Code\Reader\InstancesNamesListInterface
15+
class Interceptions implements \Magento\Tools\Di\Code\Reader\ClassesScannerInterface
1616
{
1717
/**
1818
* @var \Magento\Tools\Di\Code\Reader\ClassReaderDecorator
@@ -59,6 +59,16 @@ public function __construct(
5959
$this->validator->add($contextAggregationValidator);
6060
}
6161

62+
/**
63+
* Adds exclude patterns
64+
*
65+
* @param array $excludePatterns
66+
* @return void
67+
*/
68+
public function addExcludePatterns(array $excludePatterns)
69+
{
70+
}
71+
6272
/**
6373
* Retrieves list of classes for given path
6474
*

dev/tools/Magento/Tools/Di/Test/Unit/App/Task/AreaTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ class AreaTest extends \PHPUnit_Framework_TestCase
1919
private $areaListMock;
2020

2121
/**
22-
* @var \Magento\Tools\Di\Code\Reader\InstancesNamesList\Area | \PHPUnit_Framework_MockObject_MockObject
22+
* @var \Magento\Tools\Di\Code\Reader\Decorator\Area | \PHPUnit_Framework_MockObject_MockObject
2323
*/
2424
private $areaInstancesNamesList;
2525

@@ -43,7 +43,7 @@ protected function setUp()
4343
$this->areaListMock = $this->getMockBuilder('Magento\Framework\App\AreaList')
4444
->disableOriginalConstructor()
4545
->getMock();
46-
$this->areaInstancesNamesList = $this->getMockBuilder('\Magento\Tools\Di\Code\Reader\InstancesNamesList\Area')
46+
$this->areaInstancesNamesList = $this->getMockBuilder('\Magento\Tools\Di\Code\Reader\Decorator\Area')
4747
->disableOriginalConstructor()
4848
->getMock();
4949
$this->configReaderMock = $this->getMockBuilder('Magento\Tools\Di\Compiler\Config\Reader')

dev/tools/Magento/Tools/Di/Test/Unit/App/Task/InterceptionCacheTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class InterceptionCacheTest extends \PHPUnit_Framework_TestCase
1515
private $configMock;
1616

1717
/**
18-
* @var \PHPUnit_Framework_MockObject_MockObject | \Magento\Tools\Di\Code\Reader\InstancesNamesList\Interceptions
18+
* @var \PHPUnit_Framework_MockObject_MockObject | \Magento\Tools\Di\Code\Reader\Decorator\Interceptions
1919
*/
2020
private $interceptionsListMock;
2121

@@ -26,7 +26,7 @@ public function setUp()
2626
->disableOriginalConstructor()
2727
->getMock();
2828
$this->interceptionsListMock = $this->getMockBuilder(
29-
'Magento\Tools\Di\Code\Reader\InstancesNamesList\Interceptions'
29+
'Magento\Tools\Di\Code\Reader\Decorator\Interceptions'
3030
)
3131
->setMethods([])
3232
->disableOriginalConstructor()

dev/tools/Magento/Tools/Di/Test/Unit/Code/Reader/InstancesNamesList/AreaTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55
*/
66
namespace Magento\Tools\Di\Test\Unit\Code\Reader\InstancesNamesList;
77

8-
use \Magento\Tools\Di\Code\Reader\InstancesNamesList\Area;
8+
use \Magento\Tools\Di\Code\Reader\Decorator\Area;
99

1010
/**
1111
* Class AreaTest
1212
*
13-
* @package Magento\Tools\Di\Code\Reader\InstancesNamesList
13+
* @package Magento\Tools\Di\Code\Reader\Decorator
1414
*/
1515
class AreaTest extends \PHPUnit_Framework_TestCase
1616
{
@@ -41,7 +41,7 @@ protected function setUp()
4141
->setMethods(['getConstructor'])
4242
->getMock();
4343

44-
$this->model = new \Magento\Tools\Di\Code\Reader\InstancesNamesList\Area(
44+
$this->model = new \Magento\Tools\Di\Code\Reader\Decorator\Area(
4545
$this->classesScannerMock,
4646
$this->classReaderDecoratorMock
4747
);

0 commit comments

Comments
 (0)