You are here

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

Same name in this branch
  1. 8 tests/src/Unit/Plugin/DMU/Fixer/DisableTest.php \Drupal\Tests\drupalmoduleupgrader\Unit\Plugin\DMU\Fixer\DisableTest
  2. 8 tests/src/Unit/Plugin/DMU/Converter/Functions/DisableTest.php \Drupal\Tests\drupalmoduleupgrader\Unit\Plugin\DMU\Converter\Functions\DisableTest

@group DMU.Fixer

@TODO Add a test of the 'where' configuration option.

Hierarchy

Expanded class hierarchy of DisableTest

File

tests/src/Unit/Plugin/DMU/Fixer/DisableTest.php, line 14

Namespace

Drupal\Tests\drupalmoduleupgrader\Unit\Plugin\DMU\Fixer
View source
class DisableTest extends TestBase {
  public function test() {
    $code = <<<'END'
<?php

variable_get('foo');
END;
    $this->dir
      ->getChild('foo.module')
      ->setContent(rtrim($code));
    $indexer = new FunctionCalls([], 'function', [
      'exclude' => [],
    ], $this->db, $this->target);
    $indexer
      ->build();
    $this->container
      ->get('plugin.manager.drupalmoduleupgrader.indexer')
      ->method('createInstance')
      ->with('function_call')
      ->willReturn($indexer);
    $config = [
      'type' => 'function_call',
      'id' => 'variable_get',
      'note' => 'This is no longer kosher!',
    ];
    $plugin = new Disable($config, uniqid(), []);
    $plugin
      ->setTarget($this->target);
    $plugin
      ->execute();
    $expected = <<<END
<?php

// This is no longer kosher!
// variable_get('foo');
END;

    // trim() makes the test pass. Go figure.
    $this
      ->assertEquals($expected, trim($this->dir
      ->getChild('foo.module')
      ->getContent()));
  }

}

Members

Namesort descending Modifiers Type Description Overrides
ContainerMockTrait::$container protected property
ContainerMockTrait::mockContainer protected function
ContainerMockTrait::mockLogger protected function
ContainerMockTrait::mockTranslator protected function
DisableTest::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.