Skip to content
Snippets Groups Projects
Commit be82cf3b authored by Daniel Wehner's avatar Daniel Wehner Committed by Tim Plunkett
Browse files

Issue #1778066 by dawehner: Fixed Test entity integration into fields.

parent 601c922f
Branches
Tags
2 merge requests!7452Issue #1797438. HTML5 validation is preventing form submit and not fully...,!789Issue #3210310: Adjust Database API to remove deprecated Drupal 9 code in Drupal 10
<?php
/**
* @file
* Definition of Drupal\views\Tests\Entity\FieldEntityTest.
*/
namespace Drupal\views\Tests\Entity;
use Drupal\views\Tests\ViewTestBase;
/**
* Tests the field plugin base integration with the entity system.
*/
class FieldEntityTest extends ViewTestBase {
/**
* Modules to enable.
*
* @var array
*/
public static $modules = array('comment');
public static function getInfo() {
return array(
'name' => 'Field: Entity Api Integration',
'description' => 'Tests the field plugin base integration with the entity system.',
'group' => 'Views Modules',
);
}
/**
* Tests the get_entity method.
*/
public function testGetEntity() {
// The view is a view of comments, their nodes and their authors, so there
// are three layers of entities.
$account = entity_create('user', array('name' => $this->randomName(), 'bundle' => 'user'));
$account->save();
$node = entity_create('node', array('uid' => $account->id(), 'type' => 'page'));
$node->save();
$comment = entity_create('comment', array('uid' => $account->id(), 'nid' => $node->id(), 'node_type' => 'comment_node_page'));
$comment->save();
$view = views_get_view('test_field_get_entity');
$this->executeView($view);
$row = $view->result[0];
// Tests entities on the base level.
$entity = $view->field['cid']->get_entity($row);
$this->assertEqual($entity->id(), $comment->id(), 'Make sure the right comment entity got loaded.');
// Tests entities as relationship on first level.
$entity = $view->field['nid']->get_entity($row);
$this->assertEqual($entity->id(), $node->id(), 'Make sure the right node entity got loaded.');
// Tests entities as relationships on second level.
$entity = $view->field['uid']->get_entity($row);
$this->assertEqual($entity->id(), $account->id(), 'Make sure the right user entity got loaded.');
}
}
api_version: '3.0'
base_table: comment
core: 8.0-dev
description: ''
disabled: '0'
display:
default:
display_options:
access:
type: perm
cache:
type: none
exposed_form:
type: basic
fields:
cid:
field: cid
id: cid
table: comment
nid:
field: nid
id: nid
table: node
relationship: nid
uid:
field: uid
id: uid
table: users
relationship: uid
filter_groups:
groups: { }
operator: AND
filters: { }
pager:
type: full
query:
type: views_query
relationships:
nid:
field: nid
id: nid
required: '1'
table: comment
uid:
admin_label: ''
field: uid
group_type: group
id: uid
label: author
relationship: nid
required: '0'
table: node
row_plugin: fields
sorts: { }
style_plugin: default
display_plugin: default
display_title: Master
id: default
position: '0'
human_name: test_field_get_entity
name: test_field_get_entity
tag: default
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment