You are here

public function ProtectedNodePrivateFile::testAllowedView in Protected Node 1.0.x

Same name and namespace in other branches
  1. 7 tests/protected_node.private_file.test \ProtectedNodePrivateFile::testAllowedView()

Test function.

Test that a file on a node protected with per node protection can be downloaded with the right password.

File

tests/protected_node.private_file.test, line 72
Test protected node behavior with private files.

Class

ProtectedNodePrivateFile
Configure protected_node to use per node password and use private file field.

Code

public function testAllowedView() {

  // Log in as Admin.
  $this
    ->drupalLogin($this->adminUser);

  // Generate random password.
  $password = $this
    ->randomName(10);

  // Create a new page node.
  $node = $this
    ->createProtectedNode($password);

  // Once the node created logout the user.
  $this
    ->drupalLogout();

  // An authenticated user sees the node.
  $this
    ->drupalLogin($this->normalAccessAllowedUser);
  $form = array(
    'password' => $password,
  );
  $this
    ->drupalPost('node/' . $node->nid, $form, t('OK'));

  // Ensure the file can be downloaded.
  $this
    ->drupalGet(file_create_url($node->private_file[LANGUAGE_NONE][0]['uri']));
  $this
    ->assertResponse(200, 'Confirmed that the generated URL is correct by downloading the shipped file.');
}