class FontWeightTest

Same name and namespace in other branches
  1. 11.x core/tests/Drupal/Tests/Core/Theme/DesignToken/Plugin/FontWeightTest.php \Drupal\Tests\Core\Theme\DesignToken\Plugin\FontWeightTest

Tests font weight value plugin.

Attributes

#[CoversClass(FontWeight::class)] #[Group('design_token')]

Hierarchy

Expanded class hierarchy of FontWeightTest

File

core/tests/Drupal/Tests/Core/Theme/DesignToken/Plugin/FontWeightTest.php, line 17

Namespace

Drupal\Tests\Core\Theme\DesignToken\Plugin
View source
class FontWeightTest extends DesignTokenValuePluginTestBase {
  
  /**
   * {@inheritdoc}
   */
  protected string $pluginId = 'fontWeight';
  
  /**
   * {@inheritdoc}
   */
  public function testToDtcg(mixed $value, mixed $expected) : void {
    assert(is_string($expected) || is_int($expected));
    $configuration = [
      'value' => $value,
    ];
    $plugin = new FontWeight($configuration, $this->pluginId, []);
    $this->assertSame($expected, $plugin->toDtcg());
  }
  
  /**
   * Data provider for ::testToDtcg().
   *
   * @return \Generator
   *   The test cases.
   */
  public static function providerToDtcg() : iterable {
    foreach (FontWeightAlias::cases() as $case) {
      yield $case->name => [
        $case->value,
        $case->value(),
      ];
    }
    yield 'integer' => [
      50,
      50,
    ];
    yield 'minimum' => [
      1,
      1,
    ];
    yield 'maximum' => [
      1000,
      1000,
    ];
  }
  
  /**
   * {@inheritdoc}
   */
  public function testToCss(mixed $value, string $expected) : void {
    $configuration = [
      'value' => $value,
    ];
    $plugin = new FontWeight($configuration, $this->pluginId, []);
    $this->assertSame($expected, $plugin->toCss());
  }
  
  /**
   * Data provider for ::testToCss().
   *
   * @return \Generator
   *   The test cases.
   */
  public static function providerToCss() : iterable {
    foreach (FontWeightAlias::cases() as $case) {
      yield $case->name => [
        $case->value,
        (string) $case->value(),
      ];
    }
    yield 'integer' => [
      50,
      '50',
    ];
    yield 'minimum' => [
      1,
      '1',
    ];
    yield 'maximum' => [
      1000,
      '1000',
    ];
  }
  
  /**
   * Tests invalid unit.
   */
  public function testInvalidUnit() : void {
    $this->expectException(\ValueError::class);
    $this->expectExceptionMessage('"<script>alert()</script>" is not a valid backing value for enum Drupal\\Core\\Theme\\DesignToken\\Enum\\FontWeightAlias');
    $configuration = [
      'value' => '<script>alert()</script>',
    ];
    new FontWeight($configuration, $this->pluginId, []);
  }

}

Members

Title Sort descending Deprecated Modifiers Object type Summary Overriden Title Overrides
DrupalTestCase::$root protected property The Drupal root directory.
DrupalTestCase::getDrupalRoot Deprecated protected function Returns the Drupal root directory. 1
DrupalTestCase::setUpRoot final protected function Ensure that the $root property is set initially.
DrupalTestCase::skipTestWithAttribute final protected function Supports skipping tests with the Skip attribute.
DrupalTestCaseTrait::checkErrorHandlerOnTearDown public function Checks the test error handler after test execution. 1
DrupalTestCaseTrait::expectExceptionMessageIs protected function Expects an exactly matching exception message.
DrupalTestCaseTrait::expectExceptionMessageIsOrContains protected function Expects an exception message containing a specified string.
DrupalTestCaseTrait::setDebugDumpHandler public static function Registers the dumper CLI handler when the DebugDump extension is enabled.
FontWeightTest::$pluginId protected property The tested plugin ID. Overrides DesignTokenValuePluginTestBase::$pluginId
FontWeightTest::providerToCss public static function Data provider for ::testToCss().
FontWeightTest::providerToDtcg public static function Data provider for ::testToDtcg().
FontWeightTest::testInvalidUnit public function Tests invalid unit.
FontWeightTest::testToCss public function #[DataProvider('providerToCss')] Overrides DesignTokenValuePluginTestBase::testToCss
FontWeightTest::testToDtcg public function #[DataProvider('providerToDtcg')] Overrides DesignTokenValuePluginTestBase::testToDtcg
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.
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::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 362
UnitTestCase::setupMockIterator protected function Set up a traversable class mock to return specific items when iterated.

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