function ModuleRequiredTestCase::testDisableRequired

7.x system.test ModuleRequiredTestCase::testDisableRequired()

Assert that core required modules cannot be disabled.

File

drupal-7.x/modules/system/system.test, line 637
Tests for system.module.

Class

ModuleRequiredTestCase
Test required modules functionality.

Code

function testDisableRequired() {
  $module_info = system_get_info('module');
  $this->drupalGet('admin/modules');
  foreach ($module_info as $module => $info) {
    // Check to make sure the checkbox for each required module is disabled
    // and checked (or absent from the page if the module is also hidden).
    if (!empty($info['required'])) {
      $field_name = "modules[{$info['package']}][$module][enable]";
      if (empty($info['hidden'])) {
        $this->assertFieldByXPath("//input[@name='$field_name' and @disabled='disabled' and @checked='checked']", '', format_string('Field @name was disabled and checked.', array('@name' => $field_name)));
      }
      else {
        $this->assertNoFieldByName($field_name);
      }
    }
  }
}