You are here

class Porter2Pecl4 in Porter-Stemmer 8

Tests the "PorterStemmer" implementation with PECL stem_english().

@group porterstemmer

Hierarchy

Expanded class hierarchy of Porter2Pecl4

See also

https://pecl.php.net/package/stem

File

tests/src/Unit/Porter2Pecl4.php, line 12

Namespace

Drupal\Tests\porterstemmer\Unit
View source
class Porter2Pecl4 extends PorterPeclBase {

  /**
   * Test PECL stem_english() with a data provider method.
   *
   * Uses the data provider method to test with a wide range of words/stems.
   *
   * @dataProvider stemDataProvider
   */
  public function testStem($word, $stem) {
    if ($this->hasPeclStem) {
      $this
        ->assertEquals($stem, stem_english($word));
    }
    else {
      $this
        ->markTestSkipped('No PECL stem library found, Aborting test.');
    }
  }

  /**
   * Data provider for testStem().
   *
   * @return array
   *   Nested arrays of values to check:
   *   - $word
   *   - $stem
   */
  public function stemDataProvider() {
    if ($this->hasPeclStem) {
      return $this
        ->retrieveStemWords(15000);
    }
    else {
      return [
        [
          '',
          '',
        ],
      ];
    }
  }

}

Members

Namesort descending Modifiers Type Description Overrides
PhpunitCompatibilityTrait::getMock Deprecated public function Returns a mock object for the specified class using the available method.
PhpunitCompatibilityTrait::setExpectedException Deprecated public function Compatibility layer for PHPUnit 6 to support PHPUnit 4 code.
Porter2Pecl4::stemDataProvider public function Data provider for testStem().
Porter2Pecl4::testStem public function Test PECL stem_english() with a data provider method.
PorterPeclBase::$hasPeclStem public property Whether or not we have the PECL stem extension.
PorterPeclBase::$modules protected static property Modules to install.
PorterPeclBase::setUp protected function Overrides UnitTestCase::setUp
TestItemsTrait::retrieveStemWords public function Load an associative array of known input/output pairs.
UnitTestCase::$randomGenerator protected property The random generator.
UnitTestCase::$root protected property The app root. 1
UnitTestCase::assertArrayEquals protected function Asserts if two arrays are equal by sorting them first.
UnitTestCase::getBlockMockWithMachineName Deprecated protected function Mocks a block with a block plugin. 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::getRandomGenerator protected function Gets the random generator for the utility methods.
UnitTestCase::getStringTranslationStub public function Returns a stub translation manager that just returns the passed string.
UnitTestCase::randomMachineName public function Generates a unique random string containing letters and numbers.