function EnableDisableTestCase::testEntityInfoChanges

Ensures entity info cache is updated after changes.

File

modules/system/system.test, line 277

Class

EnableDisableTestCase
Test module enabling/disabling functionality.

Code

function testEntityInfoChanges() {
  module_enable(array(
    'entity_cache_test',
  ));
  $entity_info = entity_get_info();
  $this->assertTrue(isset($entity_info['entity_cache_test']), 'Test entity type found.');
  // Change the label of the test entity type and make sure changes appear
  // after flushing caches.
  variable_set('entity_cache_test_label', 'New label.');
  drupal_flush_all_caches();
  $info = entity_get_info('entity_cache_test');
  $this->assertEqual($info['label'], 'New label.', 'New label appears in entity info.');
  // Disable the providing module and make sure the entity type is gone.
  module_disable(array(
    'entity_cache_test',
    'entity_cache_test_dependency',
  ));
  $entity_info = entity_get_info();
  $this->assertFalse(isset($entity_info['entity_cache_test']), 'Entity type of the providing module is gone.');
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.