class LoggerChannelFactoryTest

Same name in other branches
  1. 9 core/tests/Drupal/Tests/Core/Logger/LoggerChannelFactoryTest.php \Drupal\Tests\Core\Logger\LoggerChannelFactoryTest
  2. 8.9.x core/tests/Drupal/Tests/Core/Logger/LoggerChannelFactoryTest.php \Drupal\Tests\Core\Logger\LoggerChannelFactoryTest
  3. 11.x core/tests/Drupal/Tests/Core/Logger/LoggerChannelFactoryTest.php \Drupal\Tests\Core\Logger\LoggerChannelFactoryTest

@coversDefaultClass \Drupal\Core\Logger\LoggerChannelFactory @group Logger

Hierarchy

Expanded class hierarchy of LoggerChannelFactoryTest

File

core/tests/Drupal/Tests/Core/Logger/LoggerChannelFactoryTest.php, line 18

Namespace

Drupal\Tests\Core\Logger
View source
class LoggerChannelFactoryTest extends UnitTestCase {
    
    /**
     * Tests LoggerChannelFactory::get().
     *
     * @covers ::get
     */
    public function testGet() : void {
        $factory = new LoggerChannelFactory($this->createMock(RequestStack::class), $this->createMock(AccountInterface::class));
        // Ensure that when called with the same argument, always the same instance
        // will be returned.
        $this->assertSame($factory->get('test'), $factory->get('test'));
    }
    
    /**
     * @covers ::__construct
     * @group legacy
     */
    public function testConstructorDeprecation() : void {
        $container = $this->prophesize(ContainerInterface::class);
        $container->get('request_stack')
            ->willReturn($this->prophesize(RequestStack::class)
            ->reveal());
        $container->get('current_user')
            ->willReturn($this->prophesize(AccountProxy::class)
            ->reveal());
        \Drupal::setContainer($container->reveal());
        $this->expectDeprecation('Calling Drupal\\Core\\Logger\\LoggerChannelFactory::__construct without the $requestStack argument is deprecated in drupal:10.3.0 and it will be required in drupal:11.0.0. See https://www.drupal.org/node/3416354');
        $this->expectDeprecation('Calling Drupal\\Core\\Logger\\LoggerChannelFactory::__construct without the $currentUser argument is deprecated in drupal:10.3.0 and it will be required in drupal:11.0.0. See https://www.drupal.org/node/3416354');
        new LoggerChannelFactory();
    }
    
    /**
     * @covers ::get
     * @group legacy
     */
    public function testWithoutConstructor() : void {
        $container = $this->prophesize(ContainerInterface::class);
        $container->get('request_stack')
            ->willReturn($this->prophesize(RequestStack::class)
            ->reveal());
        $container->get('current_user')
            ->willReturn($this->prophesize(AccountProxy::class)
            ->reveal());
        \Drupal::setContainer($container->reveal());
        $factory = new LoggerChannelWithoutConstructor();
        $this->expectDeprecation('Calling Drupal\\Core\\Logger\\LoggerChannelFactory::get without calling the constructor is deprecated in drupal:10.3.0 and it will be required in drupal:11.0.0. See https://www.drupal.org/node/3416354');
        $this->assertSame($factory->get('test'), $factory->get('test'));
    }
    
    /**
     * @covers ::setContainer
     * @group legacy
     */
    public function testDeprecatedSetContainer() : void {
        $factory = new LoggerChannelFactory($this->createMock(RequestStack::class), $this->createMock(AccountInterface::class));
        $this->expectDeprecation('Calling Drupal\\Core\\Logger\\LoggerChannelFactory::setContainer() is deprecated in drupal:10.3.0 and is removed from drupal:11.0.0. Use dependency injection instead. See https://www.drupal.org/node/3416354');
        $factory->setContainer();
    }
    
    /**
     * @covers ::__get
     * @group legacy
     */
    public function testDeprecatedGetContainer() : void {
        $factory = new LoggerChannelFactory($this->createMock(RequestStack::class), $this->createMock(AccountInterface::class));
        $container = $this->prophesize(ContainerInterface::class);
        $request_stack = $this->prophesize(RequestStack::class)
            ->reveal();
        $container->get('request_stack')
            ->willReturn($request_stack);
        \Drupal::setContainer($container->reveal());
        $this->expectDeprecation('Accessing the container property in Drupal\\Core\\Logger\\LoggerChannelFactory is deprecated in drupal:10.3.0 and is removed from drupal:11.0.0. Use dependency injection instead. See https://www.drupal.org/node/3416354');
        $this->assertSame($request_stack, $factory->container
            ->get('request_stack'));
    }

}

Members

Title Sort descending Deprecated Modifiers Object type Summary Overrides
LoggerChannelFactoryTest::testConstructorDeprecation public function @covers ::__construct
@group legacy
LoggerChannelFactoryTest::testDeprecatedGetContainer public function @covers ::__get
@group legacy
LoggerChannelFactoryTest::testDeprecatedSetContainer public function @covers ::setContainer
@group legacy
LoggerChannelFactoryTest::testGet public function Tests LoggerChannelFactory::get().
LoggerChannelFactoryTest::testWithoutConstructor public function @covers ::get
@group legacy
PhpUnitWarnings::$deprecationWarnings private static property Deprecation warnings from PHPUnit to raise with @trigger_error().
PhpUnitWarnings::addWarning public function Converts PHPUnit deprecation warnings to E_USER_DEPRECATED.
RandomGeneratorTrait::getRandomGenerator protected function Gets the random generator for the utility methods.
RandomGeneratorTrait::randomMachineName protected function Generates a unique random string containing letters and numbers.
RandomGeneratorTrait::randomObject public function Generates a random PHP object.
RandomGeneratorTrait::randomString public function Generates a pseudo-random string of ASCII characters of codes 32 to 126.
RandomGeneratorTrait::randomStringValidate Deprecated public function Callback for random string validation.
UnitTestCase::$root protected property The app root. 1
UnitTestCase::getClassResolverStub protected function Returns a stub class resolver.
UnitTestCase::getConfigFactoryStub public function Returns a stub config factory that behaves according to the passed array.
UnitTestCase::getConfigStorageStub public function Returns a stub config storage that returns the supplied configuration.
UnitTestCase::getContainerWithCacheTagsInvalidator protected function Sets up a container with a cache tags invalidator.
UnitTestCase::getStringTranslationStub public function Returns a stub translation manager that just returns the passed string.
UnitTestCase::setUp protected function 358
UnitTestCase::setUpBeforeClass public static function
UnitTestCase::__get public function

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.