1 entity.test | EntityAPITestCase::testCRUD() |
Tests basic CRUD functionality of the Entity API.
File
- core/
modules/ entity/ tests/ entity.test, line 18 - Entity CRUD API tests.
Class
- EntityAPITestCase
- Tests the basic Entity API.
Code
function testCRUD() {
$user1 = $this->backdropCreateUser();
// Create some test entities.
$entity = entity_create('entity_test', array('name' => 'test', 'uid' => $user1->uid));
$entity->save();
$entity = entity_create('entity_test', array('name' => 'test2', 'uid' => $user1->uid));
$entity->save();
$entity = entity_create('entity_test', array('name' => 'test', 'uid' => NULL));
$entity->save();
$entities = array_values(entity_test_load_multiple(FALSE, array('name' => 'test')));
$this->assertEqual($entities[0]->name, 'test', 'Created and loaded entity.');
$this->assertEqual($entities[1]->name, 'test', 'Created and loaded entity.');
// Test loading a single entity.
$loaded_entity = entity_test_load($entity->id);
$this->assertEqual($loaded_entity->id, $entity->id, 'Loaded a single entity by id.');
// Test deleting an entity.
$entities = array_values(entity_test_load_multiple(FALSE, array('name' => 'test2')));
$entities[0]->delete();
$entities = array_values(entity_test_load_multiple(FALSE, array('name' => 'test2')));
$this->assertEqual($entities, array(), 'Entity deleted.');
// Test updating an entity.
$entities = array_values(entity_test_load_multiple(FALSE, array('name' => 'test')));
$entities[0]->name = 'test3';
$entities[0]->save();
$entity = entity_test_load($entities[0]->id);
$this->assertEqual($entity->name, 'test3', 'Entity updated.');
// Try deleting multiple test entities by deleting all.
$ids = array_keys(entity_test_load_multiple(FALSE));
entity_test_delete_multiple($ids);
$all = entity_test_load_multiple(FALSE);
$this->assertTrue(empty($all), 'Deleted all entities.');
}