summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Pott2014-04-06 20:46:19 (GMT)
committerAlex Pott2014-04-06 20:46:19 (GMT)
commit4b6ba9f079352e26d992acc2353425736fc24560 (patch)
treee8f11170ea4b92e66874a12a5597b0589d834d80
parent241356f06d1f51867404d5ee56b5f1c3cfc3df89 (diff)
Issue #2207229 by larowlan, jibran: Attempt to use 'Parent Term' relationship results in broken/missing handler.
-rw-r--r--core/modules/taxonomy/lib/Drupal/taxonomy/Tests/Views/TaxonomyParentUITest.php62
-rw-r--r--core/modules/taxonomy/taxonomy.views.inc1
-rw-r--r--core/modules/taxonomy/tests/modules/taxonomy_test_views/test_views/views.view.test_taxonomy_parent.yml140
3 files changed, 203 insertions, 0 deletions
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/Views/TaxonomyParentUITest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/Views/TaxonomyParentUITest.php
new file mode 100644
index 0000000..3a0fe14
--- /dev/null
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/Views/TaxonomyParentUITest.php
@@ -0,0 +1,62 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\taxonomy\Tests\Views\TaxonomyParentUITest.
+ */
+
+namespace Drupal\taxonomy\Tests\Views;
+
+use Drupal\views\Tests\ViewTestData;
+use Drupal\views_ui\Tests\UITestBase;
+
+/**
+ * Tests views role access plugin UI.
+ *
+ * @see Drupal\taxonomy\Plugin\views\access\Role
+ */
+class TaxonomyParentUITest extends UITestBase {
+
+ /**
+ * Views used by this test.
+ *
+ * @var array
+ */
+ public static $testViews = array('test_taxonomy_parent');
+
+ /**
+ * Modules to enable.
+ *
+ * @var array
+ */
+ public static $modules = array('taxonomy', 'taxonomy_test_views');
+
+ /**
+ * {@inheritdoc}
+ */
+ public static function getInfo() {
+ return array(
+ 'name' => 'Taxonomy: Term parent (UI)',
+ 'description' => 'Tests views taxonomy parent plugin UI.',
+ 'group' => 'Views module integration',
+ );
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ protected function setUp() {
+ parent::setUp();
+
+ ViewTestData::createTestViews(get_class($this), array('taxonomy_test_views'));
+ }
+
+ /**
+ * Tests the taxonomy parent plugin UI.
+ */
+ public function testTaxonomyParentUI() {
+ $this->drupalGet('admin/structure/views/nojs/handler/test_taxonomy_parent/default/relationship/parent');
+ $this->assertNoText('The handler for this item is broken or missing.');
+ }
+
+}
diff --git a/core/modules/taxonomy/taxonomy.views.inc b/core/modules/taxonomy/taxonomy.views.inc
index 59b94ff..2dfa5b2 100644
--- a/core/modules/taxonomy/taxonomy.views.inc
+++ b/core/modules/taxonomy/taxonomy.views.inc
@@ -338,6 +338,7 @@ function taxonomy_views_data() {
'base' => 'taxonomy_term_data',
'field' => 'parent',
'label' => t('Parent'),
+ 'id' => 'standard',
),
'filter' => array(
'help' => t('Filter the results of "Taxonomy: Term" by the parent pid.'),
diff --git a/core/modules/taxonomy/tests/modules/taxonomy_test_views/test_views/views.view.test_taxonomy_parent.yml b/core/modules/taxonomy/tests/modules/taxonomy_test_views/test_views/views.view.test_taxonomy_parent.yml
new file mode 100644
index 0000000..23594d9
--- /dev/null
+++ b/core/modules/taxonomy/tests/modules/taxonomy_test_views/test_views/views.view.test_taxonomy_parent.yml
@@ -0,0 +1,140 @@
+base_field: tid
+base_table: taxonomy_term_data
+core: 8.x
+description: ''
+status: true
+display:
+ default:
+ display_plugin: default
+ id: default
+ display_title: Master
+ position: 0
+ provider: views
+ display_options:
+ access:
+ type: perm
+ options:
+ perm: 'access content'
+ provider: user
+ cache:
+ type: none
+ options: { }
+ provider: views
+ query:
+ type: views_query
+ options:
+ disable_sql_rewrite: false
+ distinct: false
+ slave: false
+ query_comment: false
+ query_tags: { }
+ provider: views
+ exposed_form:
+ type: basic
+ options:
+ submit_button: Apply
+ reset_button: false
+ reset_button_label: Reset
+ exposed_sorts_label: 'Sort by'
+ expose_sort_order: true
+ sort_asc_label: Asc
+ sort_desc_label: Desc
+ provider: views
+ pager:
+ type: full
+ options:
+ items_per_page: 10
+ offset: 0
+ id: 0
+ total_pages: null
+ expose:
+ items_per_page: false
+ items_per_page_label: 'Items per page'
+ items_per_page_options: '5, 10, 20, 40, 60'
+ items_per_page_options_all: false
+ items_per_page_options_all_label: '- All -'
+ offset: false
+ offset_label: Offset
+ tags:
+ previous: '‹ previous'
+ next: 'next ›'
+ first: '« first'
+ last: 'last »'
+ quantity: 9
+ provider: views
+ style:
+ type: default
+ options:
+ grouping: { }
+ row_class: ''
+ default_row_class: true
+ row_class_special: true
+ uses_fields: false
+ provider: views
+ row:
+ type: fields
+ options:
+ inline: { }
+ separator: ''
+ hide_empty: false
+ default_field_elements: true
+ provider: views
+ fields:
+ name:
+ id: name
+ table: taxonomy_term_data
+ field: name
+ provider: taxonomy
+ label: ''
+ alter:
+ alter_text: false
+ make_link: false
+ absolute: false
+ trim: false
+ word_boundary: false
+ ellipsis: false
+ strip_tags: false
+ html: false
+ hide_empty: false
+ empty_zero: false
+ link_to_taxonomy: 1
+ relationship: none
+ group_type: group
+ admin_label: ''
+ exclude: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: true
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_alter_empty: true
+ convert_spaces: false
+ filters: { }
+ sorts: { }
+ header: { }
+ footer: { }
+ empty: { }
+ relationships:
+ parent:
+ id: parent
+ table: taxonomy_term_hierarchy
+ field: parent
+ relationship: none
+ group_type: group
+ admin_label: Parent
+ required: true
+ plugin_id: standard
+ provider: views
+ arguments: { }
+label: test_taxonomy_parent
+module: views
+id: test_taxonomy_parent
+tag: ''
+langcode: en
+dependencies:
+ module:
+ - taxonomy