Error message

You are browsing documentation for drupal 7.x, which is not supported anymore. Read the updated version of this page for drupal 11.x (the latest version).

function NodeSaveTestCase::testDeterminingChanges

Tests determing changes in hook_node_presave() and verifies the static node load cache is cleared upon save.

File

modules/node/node.test, line 1434

Class

NodeSaveTestCase
Tests node save related functionality, including import-save.

Code

function testDeterminingChanges() {
 // Initial creation.
 $node = (object) array(
 'uid' => $this->web_user ->uid,
 'type' => 'article',
 'title' => 'test_changes',
 );
 node_save ($node);
 // Update the node without applying changes.
 node_save ($node);
 $this->assertEqual ($node->title , 'test_changes', 'No changes have been determined.');
 // Apply changes.
 $node->title  = 'updated';
 node_save ($node);
 // The hook implementations node_test_node_presave() and
 // node_test_node_update() determine changes and change the title.
 $this->assertEqual ($node->title , 'updated_presave_update', 'Changes have been determined.');
 // Test the static node load cache to be cleared.
 $node = node_load ($node->nid);
 $this->assertEqual ($node->title , 'updated_presave', 'Static cache has been cleared.');
}

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