📍 /home/diasdiamonds/public_html/vendor/cakephp/cakephp/src/TestSuite/Fixture
📝 Editando: FixtureInjector.php
<?php /** * CakePHP(tm) : Rapid Development Framework (https://cakephp.org) * Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org) * * Licensed under The MIT License * For full copyright and license information, please see the LICENSE.txt * Redistributions of files must retain the above copyright notice. * * @copyright Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org) * @link https://cakephp.org CakePHP(tm) Project * @since 3.0.0 * @license https://opensource.org/licenses/mit-license.php MIT License */ namespace Cake\TestSuite\Fixture; loadPHPUnitAliases(); use Cake\TestSuite\TestCase; use PHPUnit\Framework\BaseTestListener; use PHPUnit\Framework\Test; use PHPUnit\Framework\TestSuite; /** * Test listener used to inject a fixture manager in all tests that * are composed inside a Test Suite */ class FixtureInjector extends BaseTestListener { /** * The instance of the fixture manager to use * * @var \Cake\TestSuite\Fixture\FixtureManager */ protected $_fixtureManager; /** * Holds a reference to the container test suite * * @var \PHPUnit\Framework\TestSuite */ protected $_first; /** * Constructor. Save internally the reference to the passed fixture manager * * @param \Cake\TestSuite\Fixture\FixtureManager $manager The fixture manager */ public function __construct(FixtureManager $manager) { if (isset($_SERVER['argv'])) { $manager->setDebug(in_array('--debug', $_SERVER['argv'])); } $this->_fixtureManager = $manager; $this->_fixtureManager->shutDown(); } /** * Iterates the tests inside a test suite and creates the required fixtures as * they were expressed inside each test case. * * @param \PHPUnit\Framework\TestSuite $suite The test suite * @return void */ public function startTestSuite(TestSuite $suite) { if (empty($this->_first)) { $this->_first = $suite; } } /** * Destroys the fixtures created by the fixture manager at the end of the test * suite run * * @param \PHPUnit\Framework\TestSuite $suite The test suite * @return void */ public function endTestSuite(TestSuite $suite) { if ($this->_first === $suite) { $this->_fixtureManager->shutDown(); } } /** * Adds fixtures to a test case when it starts. * * @param \PHPUnit\Framework\Test $test The test case * @return void */ public function startTest(Test $test) { $test->fixtureManager = $this->_fixtureManager; if ($test instanceof TestCase) { $this->_fixtureManager->fixturize($test); $this->_fixtureManager->load($test); } } /** * Unloads fixtures from the test case. * * @param \PHPUnit\Framework\Test $test The test case * @param float $time current time * @return void */ public function endTest(Test $test, $time) { if ($test instanceof TestCase) { $this->_fixtureManager->unload($test); } } }
[ Cancelar ]
Nome
Permissões
Ações
[ .. Voltar ]
📄 FixtureInjector.php
0644
[ EDITAR/VER ]
📄 FixtureManager.php
0644
[ EDITAR/VER ]
📄 TestFixture.php
0644
[ EDITAR/VER ]