Further modules included.
[yaffs-website] / web / modules / contrib / drupalmoduleupgrader / tests / src / Unit / Plugin / DMU / Analyzer / DBTest.php
1 <?php
2
3 namespace Drupal\Tests\drupalmoduleupgrader\Unit\Plugin\DMU\Analyzer;
4
5 use Drupal\drupalmoduleupgrader\Plugin\DMU\Indexer\FunctionCalls;
6
7 /**
8  * @group DMU.Analyzer
9  * @covers \Drupal\drupalmoduleupgrader\Plugin\DMU\Analyzer\DB
10  */
11 class DBTest extends AnalyzerTestBase {
12
13   public function setUp() {
14     parent::setUp();
15
16     $code = <<<'END'
17 <?php
18
19 /**
20  * Implements hook_uninstall().
21  */
22 function foo_uninstall() {
23   db_delete('variable')->condition('name', 'foo_baz')->execute();
24 }
25 END;
26     $this->dir->getChild('foo.install')->setContent($code);
27
28     $indexer = new FunctionCalls([], 'function', [], $this->db, $this->target);
29     $indexer->build();
30     $this->container
31       ->get('plugin.manager.drupalmoduleupgrader.indexer')
32       ->method('createInstance')
33       ->with('function_call')
34       ->willReturn($indexer);
35
36     $this->analyzer = $this->getPlugin([], ['function' => 'db_delete']);
37   }
38
39   public function test() {
40     $issues = $this->analyzer->analyze($this->target);
41     $this->assertInternalType('array', $issues);
42     $this->assertNotEmpty($issues);
43     $this->assertIssueDefaults($issues[0]);
44     $this->assertCount(1, $issues[0]->getViolations());
45   }
46
47 }