You are here

class ImplementHookTest in Drupal 7 to 8/9 Module Upgrader 8

@group DMU.Fixer

Hierarchy

Expanded class hierarchy of ImplementHookTest

File

tests/src/Unit/Plugin/DMU/Fixer/ImplementHookTest.php, line 12

Namespace

Drupal\Tests\drupalmoduleupgrader\Unit\Plugin\DMU\Fixer
View source
class ImplementHookTest extends TestBase {
  public function test() {
    eval('function hook_tokens($type, $tokens, array $data = array(), array $options = array()) {}');
    $config = [
      'hook' => 'tokens',
      'module' => 'system',
    ];
    $module_handler = $this
      ->createMock('\\Drupal\\Core\\Extension\\ModuleHandlerInterface');
    $plugin = new ImplementHook($config, uniqid(), [], $module_handler);
    $plugin
      ->setTarget($this->target);
    $plugin
      ->execute();
    $module = $this->target
      ->getPath('.module');
    $function = $this->target
      ->open($module)
      ->children(Filter::isFunction('foo_tokens'))
      ->get(0);
    $this
      ->assertInstanceOf('\\Pharborist\\Functions\\FunctionDeclarationNode', $function);
    $this
      ->assertEquals('foo_tokens', $function
      ->getName()
      ->getText());
    $parameters = $function
      ->getParameters();
    $this
      ->assertCount(4, $parameters);
    $this
      ->assertNull($parameters[0]
      ->getTypeHint());
    $this
      ->assertEquals('type', $parameters[0]
      ->getName());
    $this
      ->assertNull($parameters[0]
      ->getValue());
    $this
      ->assertNull($parameters[1]
      ->getTypeHint());
    $this
      ->assertEquals('tokens', $parameters[1]
      ->getName());
    $this
      ->assertNull($parameters[1]
      ->getValue());
    $this
      ->assertInstanceOf('\\Pharborist\\TokenNode', $parameters[2]
      ->getTypeHint());
    $this
      ->assertSame(T_ARRAY, $parameters[2]
      ->getTypeHint()
      ->getType());
    $this
      ->assertEquals('data', $parameters[2]
      ->getName());
    $this
      ->assertInstanceOf('\\Pharborist\\TokenNode', $parameters[3]
      ->getTypeHint());
    $this
      ->assertSame(T_ARRAY, $parameters[3]
      ->getTypeHint()
      ->getType());
    $this
      ->assertEquals('options', $parameters[3]
      ->getName());
  }

}

Members

Namesort descending Modifiers Type Description Overrides
ContainerMockTrait::$container protected property
ContainerMockTrait::mockContainer protected function
ContainerMockTrait::mockLogger protected function
ContainerMockTrait::mockTranslator protected function
ImplementHookTest::test public function
ModuleMockerTrait::mockModule protected function
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.
SQLiteDatabaseTrait::$db protected property
SQLiteDatabaseTrait::initDB protected function
TestBase::$dir protected property
TestBase::$info protected property The parsed annotations for the test class and method being executed.
TestBase::$target protected property
TestBase::getPlugin protected function Instantiates the plugin class covered by this test (as indicated by the @covers annotation). The plugin instance is given a randomly generated ID and description. Dependencies will be pulled from $this->container, so this should only be called once… 1
TestBase::setUp public function Mocks an entire module, called foo, in a virtual file system. Overrides UnitTestCase::setUp 17
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.