first import

This commit is contained in:
Bachir Soussi Chiadmi
2015-04-08 11:40:19 +02:00
commit 1bc61b12ad
8435 changed files with 1582817 additions and 0 deletions

View File

@@ -0,0 +1,96 @@
<?php
/**
* @file
* Definition of viewsHandlerFieldUserNameTest.
*/
/**
* Tests the field username handler.
*
* @see views_handler_field_user_name
*/
class viewsHandlerFieldUserNameTest extends ViewsSqlTest {
public static function getInfo() {
return array(
'name' => 'Tests user: name field',
'description' => 'Tests the handler of the user: name field',
'group' => 'Views Modules',
);
}
function testUserName() {
$view = $this->view_user_name();
$view->init_display();
$this->executeView($view);
$view->row_index = 0;
$view->field['name']->options['link_to_user'] = TRUE;
$username = $view->result[0]->users_name = $this->randomName();
$view->result[0]->uid = 1;
$render = $view->field['name']->advanced_render($view->result[0]);
$this->assertTrue(strpos($render, $username) !== FALSE, 'If link to user is checked the username should be part of the output.');
$this->assertTrue(strpos($render, 'user/1') !== FALSE, 'If link to user is checked the link to the user should appear as well.');
$view->field['name']->options['link_to_user'] = FALSE;
$username = $view->result[0]->users_name = $this->randomName();
$view->result[0]->uid = 1;
$render = $view->field['name']->advanced_render($view->result[0]);
$this->assertIdentical($render, $username, 'If the user is not linked the username should be printed out for a normal user.');
$view->result[0]->uid = 0;
$anon_name = variable_get('anonymous', t('Anonymous'));
$view->result[0]->users_name = '';
$render = $view->field['name']->advanced_render($view->result[0]);
$this->assertIdentical($render, $anon_name , 'For user0 it should use the default anonymous name by default.');
$view->field['name']->options['overwrite_anonymous'] = TRUE;
$anon_name = $view->field['name']->options['anonymous_text'] = $this->randomName();
$render = $view->field['name']->advanced_render($view->result[0]);
$this->assertIdentical($render, $anon_name , 'For user0 it should use the configured anonymous text if overwrite_anonymous is checked.');
}
function view_user_name() {
$view = new view;
$view->name = 'test_views_handler_field_user_name';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'users';
$view->human_name = 'test_views_handler_field_user_name';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['query']['options']['query_comment'] = FALSE;
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Field: User: Name */
$handler->display->display_options['fields']['name']['id'] = 'name';
$handler->display->display_options['fields']['name']['table'] = 'users';
$handler->display->display_options['fields']['name']['field'] = 'name';
$handler->display->display_options['fields']['name']['label'] = '';
$handler->display->display_options['fields']['name']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['name']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['name']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['name']['alter']['word_boundary'] = 0;
$handler->display->display_options['fields']['name']['alter']['ellipsis'] = 0;
$handler->display->display_options['fields']['name']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['name']['alter']['trim'] = 0;
$handler->display->display_options['fields']['name']['alter']['html'] = 0;
$handler->display->display_options['fields']['name']['hide_empty'] = 0;
$handler->display->display_options['fields']['name']['empty_zero'] = 0;
$handler->display->display_options['fields']['name']['link_to_user'] = 1;
$handler->display->display_options['fields']['name']['overwrite_anonymous'] = 0;
return $view;
}
}

View File

@@ -0,0 +1,143 @@
<?php
/**
* @file
* Definition of ViewsUserTestCase.
*/
/**
* Tests basic user module integration into views.
*/
class ViewsUserTestCase extends ViewsSqlTest {
var $users = array();
var $nodes = array();
public static function getInfo() {
return array(
'name' => 'Tests basic user integration',
'description' => 'Tests the integration of user module',
'group' => 'Views Modules',
);
}
protected function setUp() {
parent::setUp();
$this->users[] = $this->drupalCreateUser();
$this->users[] = user_load(1);
$this->nodes[] = $this->drupalCreateNode(array('uid' => $this->users[0]->uid));
$this->nodes[] = $this->drupalCreateNode(array('uid' => 1));
}
/**
* Add a view which has no explicit relationship to the author and check the result.
*
* @todo: Remove the following comment once the relationship is required.
* One day a view will require the relationship so it should still work
*/
public function testRelationship() {
$view = $this->test_view_user_relationship();
$view->execute_display();
$expected = array();
for ($i = 0; $i <= 1; $i++) {
$expected[$i] = array(
'node_title' => $this->nodes[$i]->title,
'users_uid' => $this->nodes[$i]->uid,
'users_name' => $this->users[$i]->name,
);
}
$this->assertIdenticalResultset($view, $expected);
}
function test_view_user_relationship() {
$view = new view;
$view->name = 'test_user_relationship';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'test_user_relationship';
$view->core = 7;
$view->api_version = '3.0-alpha1';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'test_user_relationship';
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['query']['options']['query_comment'] = FALSE;
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['items_per_page'] = '10';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
$handler->display->display_options['row_options']['hide_empty'] = 0;
$handler->display->display_options['row_options']['default_field_elements'] = 1;
/* Field: Content: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = '';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 0;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 0;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['link_to_node'] = 1;
/* Field: User: Name */
$handler->display->display_options['fields']['name']['id'] = 'name';
$handler->display->display_options['fields']['name']['table'] = 'users';
$handler->display->display_options['fields']['name']['field'] = 'name';
$handler->display->display_options['fields']['name']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['name']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['name']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['name']['alter']['external'] = 0;
$handler->display->display_options['fields']['name']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['name']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['name']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['name']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['name']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['name']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['name']['alter']['trim'] = 0;
$handler->display->display_options['fields']['name']['alter']['html'] = 0;
$handler->display->display_options['fields']['name']['element_label_colon'] = 1;
$handler->display->display_options['fields']['name']['element_default_classes'] = 1;
$handler->display->display_options['fields']['name']['hide_empty'] = 0;
$handler->display->display_options['fields']['name']['empty_zero'] = 0;
$handler->display->display_options['fields']['name']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['name']['link_to_user'] = 1;
$handler->display->display_options['fields']['name']['overwrite_anonymous'] = 0;
/* Field: User: Uid */
$handler->display->display_options['fields']['uid']['id'] = 'uid';
$handler->display->display_options['fields']['uid']['table'] = 'users';
$handler->display->display_options['fields']['uid']['field'] = 'uid';
$handler->display->display_options['fields']['uid']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['uid']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['uid']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['uid']['alter']['external'] = 0;
$handler->display->display_options['fields']['uid']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['uid']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['uid']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['uid']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['uid']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['uid']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['uid']['alter']['trim'] = 0;
$handler->display->display_options['fields']['uid']['alter']['html'] = 0;
$handler->display->display_options['fields']['uid']['element_label_colon'] = 1;
$handler->display->display_options['fields']['uid']['element_default_classes'] = 1;
$handler->display->display_options['fields']['uid']['hide_empty'] = 0;
$handler->display->display_options['fields']['uid']['empty_zero'] = 0;
$handler->display->display_options['fields']['uid']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['uid']['link_to_user'] = 1;
return $view;
}
}

View File

@@ -0,0 +1,90 @@
<?php
/**
* @file
* Definition of ViewsUserArgumentDefault.
*/
/**
* Tests views user argument default plugin.
*/
class ViewsUserArgumentDefault extends ViewsSqlTest {
public static function getInfo() {
return array(
'name' => 'Tests user argument default plugin',
'description' => 'Tests user argument default plugin',
'group' => 'Views Plugins',
);
}
public function test_plugin_argument_default_current_user() {
// Create a user to test.
$account = $this->drupalCreateUser();
// Switch the user, we have to check the global user too, because drupalLogin is only for the simpletest browser.
$this->drupalLogin($account);
global $user;
$admin = $user;
drupal_save_session(FALSE);
$user = $account;
$view = $this->view_plugin_argument_default_current_user();
$view->set_display('default');
$view->pre_execute();
$view->init_handlers();
$this->assertEqual($view->argument['null']->get_default_argument(), $account->uid, 'Uid of the current user is used.');
// Switch back.
$user = $admin;
drupal_save_session(TRUE);
}
function view_plugin_argument_default_current_user() {
$view = new view;
$view->name = 'test_plugin_argument_default_current_user';
$view->description = '';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = '3.0-alpha1';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['items_per_page'] = '10';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['pager']['options']['id'] = '0';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Field: Content: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['link_to_node'] = 0;
/* Argument: Global: Null */
$handler->display->display_options['arguments']['null']['id'] = 'null';
$handler->display->display_options['arguments']['null']['table'] = 'views';
$handler->display->display_options['arguments']['null']['field'] = 'null';
$handler->display->display_options['arguments']['null']['default_action'] = 'default';
$handler->display->display_options['arguments']['null']['style_plugin'] = 'default_summary';
$handler->display->display_options['arguments']['null']['default_argument_type'] = 'current_user';
$handler->display->display_options['arguments']['null']['must_not_be'] = 0;
return $view;
}
}

View File

@@ -0,0 +1,115 @@
<?php
/**
* @file
* Definition of ViewsUserArgumentValidate.
*/
/**
* Tests views user argument argument handler.
*/
class ViewsUserArgumentValidate extends ViewsSqlTest {
public static function getInfo() {
return array(
'name' => 'Tests user argument validator',
'description' => 'Tests user argument validator',
'group' => 'Views Plugins',
);
}
function setUp() {
parent::setUp('views');
$this->account = $this->drupalCreateUser();
}
function testArgumentValidateUserUid() {
$account = $this->account;
// test 'uid' case
$view = $this->view_argument_validate_user('uid');
$view->set_display('default');
$view->pre_execute();
$view->init_handlers();
$this->assertTrue($view->argument['null']->validate_arg($account->uid));
// Reset safed argument validation.
$view->argument['null']->argument_validated = NULL;
// Fail for a string variable since type is 'uid'
$this->assertFalse($view->argument['null']->validate_arg($account->name));
// Reset safed argument validation.
$view->argument['null']->argument_validated = NULL;
// Fail for a valid numeric, but for a user that doesn't exist
$this->assertFalse($view->argument['null']->validate_arg(32));
}
function testArgumentValidateUserName() {
$account = $this->account;
// test 'name' case
$view = $this->view_argument_validate_user('name');
$view->set_display('default');
$view->pre_execute();
$view->init_handlers();
$this->assertTrue($view->argument['null']->validate_arg($account->name));
// Reset safed argument validation.
$view->argument['null']->argument_validated = NULL;
// Fail for a uid variable since type is 'name'
$this->assertFalse($view->argument['null']->validate_arg($account->uid));
// Reset safed argument validation.
$view->argument['null']->argument_validated = NULL;
// Fail for a valid string, but for a user that doesn't exist
$this->assertFalse($view->argument['null']->validate_arg($this->randomName()));
}
function testArgumentValidateUserEither() {
$account = $this->account;
// test 'either' case
$view = $this->view_argument_validate_user('either');
$view->set_display('default');
$view->pre_execute();
$view->init_handlers();
$this->assertTrue($view->argument['null']->validate_arg($account->name));
// Reset safed argument validation.
$view->argument['null']->argument_validated = NULL;
// Fail for a uid variable since type is 'name'
$this->assertTrue($view->argument['null']->validate_arg($account->uid));
// Reset safed argument validation.
$view->argument['null']->argument_validated = NULL;
// Fail for a valid string, but for a user that doesn't exist
$this->assertFalse($view->argument['null']->validate_arg($this->randomName()));
// Reset safed argument validation.
$view->argument['null']->argument_validated = NULL;
// Fail for a valid uid, but for a user that doesn't exist
$this->assertFalse($view->argument['null']->validate_arg(32));
}
function view_argument_validate_user($argtype) {
$view = new view;
$view->name = 'view_argument_validate_user';
$view->description = '';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Argument: Global: Null */
$handler->display->display_options['arguments']['null']['id'] = 'null';
$handler->display->display_options['arguments']['null']['table'] = 'views';
$handler->display->display_options['arguments']['null']['field'] = 'null';
$handler->display->display_options['arguments']['null']['style_plugin'] = 'default_summary';
$handler->display->display_options['arguments']['null']['default_argument_type'] = 'fixed';
$handler->display->display_options['arguments']['null']['validate']['type'] = 'user';
$handler->display->display_options['arguments']['null']['validate_options']['type'] = $argtype;
$handler->display->display_options['arguments']['null']['must_not_be'] = 0;
return $view;
}
}