* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DependencyInjection\Tests\Compiler; use PHPUnit\Framework\TestCase; use Symfony\Component\DependencyInjection\Compiler\PassConfig; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; /** * @author Guilhem N */ class PassConfigTest extends TestCase { public function testPassOrdering() { $config = new PassConfig(); $config->setBeforeOptimizationPasses(array()); $pass1 = $this->getMockBuilder(CompilerPassInterface::class)->getMock(); $config->addPass($pass1, PassConfig::TYPE_BEFORE_OPTIMIZATION, 10); $pass2 = $this->getMockBuilder(CompilerPassInterface::class)->getMock(); $config->addPass($pass2, PassConfig::TYPE_BEFORE_OPTIMIZATION, 30); $passes = $config->getBeforeOptimizationPasses(); $this->assertSame($pass2, $passes[0]); $this->assertSame($pass1, $passes[1]); } }