Browse Source

Fixing up tests.

pull/401/head
jonathangreen 11 years ago
parent
commit
ff8cdef2d5
  1. 42
      islandora.module
  2. 92
      tests/islandora_tuque.test

42
islandora.module

@ -1025,42 +1025,26 @@ function islandora_get_tuque_connection($new_user = NULL, $url = NULL) {
$tuque = &drupal_static(__FUNCTION__); $tuque = &drupal_static(__FUNCTION__);
global $user; if ($new_user === NULL) {
global $user;
$new_user = $user;
}
// If tuque is NULL. // If tuque is NULL.
if (!$tuque) { if (!$tuque) {
// If the provided user is not null, pass it along to Tuque. $tuque = islandora_make_tuque($new_user, $url);
if ($new_user) {
$tuque = islandora_make_tuque($new_user, $url);
}
// Otherwise give Tuque the global user.
else {
$tuque = islandora_make_tuque($user, $url);
}
} }
// Else, tuque already exists. So only make it if the users are different. // Else, tuque already exists. So only make it if the users are different.
else { else {
if ($new_user) { // Get the name of the new user. If it's '', then it's actually
// Get the name of the new user. If it's '', then it's actually // 'anonymous' as far as Tuque is concerned.
// 'anonymous' as far as Tuque is concerned. $new_user_name = $new_user->name;
$new_user_name = $new_user->name; if (empty($new_user_name)) {
if (empty($new_user_name)) { $new_user_name = 'anonymous';
$new_user_name = 'anonymous';
}
if ($new_user_name != $tuque->connection->username) {
$tuque = islandora_make_tuque($new_user);
}
} }
else { if ($new_user_name != $tuque->connection->username) {
// Get the name of the global user. If it's '', then it's actually $tuque = islandora_make_tuque($new_user, $url);
// 'anonymous' as far as Tuque is concerned.
$user_name = $user->name;
if (empty($user_name)) {
$user_name = 'anonymous';
}
if ($user->name != $tuque->connection->username) {
$tuque = islandora_make_tuque($user);
}
} }
} }
return $tuque; return $tuque;

92
tests/islandora_tuque.test

@ -14,8 +14,8 @@ class IslandoraTuqueTestCase extends IslandoraWebTestCase {
*/ */
public static function getInfo() { public static function getInfo() {
return array( return array(
'name' => 'Islandora Tuque', 'name' => 'Islandora Tuque User Cache',
'description' => 'Tests basic tuque functionality.', 'description' => 'Tests the tuque cache when a user changes.',
'group' => 'Islandora', 'group' => 'Islandora',
); );
} }
@ -34,42 +34,30 @@ class IslandoraTuqueTestCase extends IslandoraWebTestCase {
*/ */
public function testTuqueUserChange() { public function testTuqueUserChange() {
global $user; global $user;
$tuque = islandora_get_tuque_connection($user); $tuque = islandora_get_tuque_connection($user);
$old_user_name = $tuque->connection->username; $old_user_name = $tuque->connection->username;
$new_user = user_load(0); $new_user = user_load(0);
$tuque = islandora_get_tuque_connection($new_user); $tuque = islandora_get_tuque_connection($new_user);
$new_user_name = $tuque->connection->username; $new_user_name = $tuque->connection->username;
$this->assertNotEqual($old_user_name, $new_user_name, "User in tuque's connection changes when a new user is provided to islandora_get_tuque_connection()."); $this->assertNotEqual($old_user_name, $new_user_name, "User in tuque's connection changes when a new user is provided to islandora_get_tuque_connection().");
$old_user_name = $new_user_name;
$tuque = islandora_get_tuque_connection(); $tuque = islandora_get_tuque_connection();
$new_user_name = $tuque->connection->username; $new_user_name = $tuque->connection->username;
$this->assertEqual($old_user_name, $new_user_name, "User in tuque's connection does not change when no user is provided to islandora_get_tuque_connection()."); $this->assertEqual($old_user_name, $new_user_name, "User in tuque's connection changes back when no user is provided.");
} }
/** /**
* Tests that tuque does not exist and the user is not null. * Tests that tuque does not exist and the user is not null.
*/ */
public function testTuqueDoesNotExistAndUserIsNotNull() { public function testTuqueDoesNotExistAndUserIsNotNull() {
$tuque = &drupal_static(__FUNCTION__); drupal_static_reset('islandora_get_tuque_connection');
$tuque = NULL; $user_to_provide = user_load(1);
$user_to_provide = user_load(0);
$new_tuque = islandora_get_tuque_connection($user_to_provide); $new_tuque = islandora_get_tuque_connection($user_to_provide);
$new_tuque_user_name = $new_tuque->connection->username; $new_tuque_user_name = $new_tuque->connection->username;
$this->assertNotNull($new_tuque); $this->assertNotNull($new_tuque, 'Tuque is not NULL');
$this->assertNotNull($tuque);
$this->assertEqual($user_to_provide->name, $new_tuque_user_name); $this->assertEqual($user_to_provide->name, $new_tuque_user_name);
} }
@ -77,71 +65,9 @@ class IslandoraTuqueTestCase extends IslandoraWebTestCase {
* Tests that tuque does not exist and the user is null. * Tests that tuque does not exist and the user is null.
*/ */
public function testTuqueDoesNotExistAndUserIsNull() { public function testTuqueDoesNotExistAndUserIsNull() {
$tuque = &drupal_static(__FUNCTION__); $new_tuque = islandora_get_tuque_connection();
$tuque = NULL;
$user_to_provide = NULL;
$new_tuque = islandora_get_tuque_connection($user_to_provide);
$new_tuque_user_name = $new_tuque->connection->username; $new_tuque_user_name = $new_tuque->connection->username;
global $user;
$this->assertNotNull($new_tuque);
$this->assertNotNull($tuque);
$this->assertEqual($new_tuque_user_name, $user);
}
/**
* Test that tuque exists, the user is not null, the user is not tuque's user.
*/
public function testTuqueExistsAndUserIsNotNullAndUserIsNotTuquesUser() {
$tuque = &drupal_static(__FUNCTION__);
$user_to_provide = user_load(0);
$new_tuque = islandora_get_tuque_connection($user_to_provide);
$this->assertNotNull($new_tuque);
$this->assertNotNull($tuque);
$this->assertNotEqual($user_to_provide->name, $new_tuque->connection->username);
}
/**
* Tests that tuque exists, the user is not null, the user is tuque's user.
*/
public function testTuqueExistsAndUserIsNotNullAndUserIsTuquesUser() {
$tuque = &drupal_static(__FUNCTION__);
$new_tuque = islandora_get_tuque_connection($tuque->connection->username);
$this->assertNotNull($new_tuque);
$this->assertNotNull($tuque);
$this->assertEqual($tuque->connection->username, $new_tuque->connection->username);
}
/**
* Tests that tuque exists, the user is null, global user is not tuque's user.
*/
public function testTuqueExistsAndUserIsNullAndGlobalUserIsNotTuquesUser() {
$tuque = &drupal_static(__FUNCTION__);
global $user; global $user;
$user = NULL; $this->assertEqual($new_tuque_user_name, $user->name);
$new_tuque = islandora_get_tuque_connection($user);
$this->assertNotNull($new_tuque);
$this->assertNotNull($tuque);
$this->assertNotEqual($new_tuque->connection->username, $user);
}
/**
* Tests that tuque exists, the user is null, global user is tuque's user.
*/
public function testTuqueExistsAndUserIsNullAndGlobalUserIsTuquesUser() {
$tuque = &drupal_static(__FUNCTION__);
global $_islandora_user;
$_islandora_user = $tuque->connection->username;
$new_tuque = islandora_get_tuque_connection($user);
$this->assertNotNull($new_tuque);
$this->assertNotNull($tuque);
$this->assertEqual($new_tuque->connection->username, $user);
} }
} }
Loading…
Cancel
Save