5 * Tests for enable, disable, uninstall, pm-list commands.
14 class EnDisUnListInfoCase extends CommandUnishTestCase
17 public function testEnDisUnList()
19 $sites = $this->setUpDrupal(1, true);
21 // Test that pm-list lists uninstalled modules.
22 $this->drush('pm-list', [], ['no-core' => null, 'status' => 'disabled']);
23 $out = $this->getOutput();
24 $this->assertContains('devel', $out);
26 // Test pm-enable enables a module, and pm-list verifies that.
27 $this->drush('pm-enable', ['devel']);
28 $this->drush('pm-list', [], ['status' => 'enabled']);
29 $out = $this->getOutput();
30 $this->assertContains('devel', $out);
31 // Test the testing install profile theme is installed.;
32 $this->assertContains('classy', $out, 'Themes are in the pm-list');
34 // Test cache was cleared after enabling a module.
36 $path = '/admin/config/development/devel';
37 $this->drush('sql-query', ["SELECT path FROM $table WHERE path = '$path';"]);
38 $list = $this->getOutputAsList();
39 $this->assertTrue(in_array($path, $list), 'Cache was cleared after modules were enabled');
41 // Test pm-list filtering.
42 $this->drush('pm-list', [], ['package' => 'Core']);
43 $out = $this->getOutput();
44 $this->assertNotContains('devel', $out, 'Devel is not part of core package');
46 // Test module uninstall.
47 $this->drush('pm-uninstall', ['devel']);
48 $this->drush('pm-list', [], ['status' => 'disabled', 'type' => 'module']);
49 $out = $this->getOutput();
50 $this->assertContains('devel', $out);