Skip to content

Commit

Permalink
Issue #92: Merge branch '7.x-2.x' of D7 in
Browse files Browse the repository at this point in the history
Fixes #92
  • Loading branch information
laryn committed Oct 12, 2021
2 parents 3f74b63 + c23b9c7 commit 15f805e
Show file tree
Hide file tree
Showing 50 changed files with 2,545 additions and 462 deletions.
334 changes: 270 additions & 64 deletions tests/xmlsitemap.test

Large diffs are not rendered by default.

144 changes: 144 additions & 0 deletions tests/xmlsitemap_views_fields.test
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
<?php

/**
* @file
* Functional tests for providing xmlsitemap fields to views.
*/

class XmlsitemapViewsFieldsTest extends DrupalWebTestCase {

/**
* Information about these tests, for the testing UX.
*
* @return array
* The information.
*/
public static function getInfo() {
return array(
'name' => 'XML sitemap views fields',
'description' => 'Functional tests for providing xmlsitemap fields to views.',
'group' => 'XML sitemap',
'dependencies' => array('views'),
);
}

/**
* Setup before any tests are run.
*
* @see DrupalWebTestCase::setUp()
*/
protected function setUp($modules = array()) {
$modules[] = 'views';
$modules[] = 'xmlsitemap_node';
parent::setUp($modules);
}

/**
* Test that views can show XML sitemap settings on nodes.
*/
public function testNodeSettings() {
// Create a node.
$node = $this->drupalCreateNode();
// Create view with xmlsitemap fields.
$view = $this->nodeView();
$view->save();
// Load view, check that xmlsitemap fields are not overridden.
$this->drupalGet('xmlsitemap-node-fields');
$this->assertRaw('<span class="xmlsitemap-priority">0.5</span>');
$this->assertRaw('<span class="xmlsitemap-priority-override">No</span>');
$this->assertRaw('<span class="xmlsitemap-inclusion">No</span>');
$this->assertRaw('<span class="xmlsitemap-inclusion-override">No</span>');
// Override xmlsitemap fields for node.
$node->xmlsitemap['priority'] = 0.6;
$node->xmlsitemap['priority_override'] = 1;
$node->xmlsitemap['status'] = 1;
$node->xmlsitemap['status_override'] = 1;
node_save($node);
// Re-load view, check that xmlsitemap fields are overridden.
$this->drupalGet('xmlsitemap-node-fields');
$this->assertRaw('<span class="xmlsitemap-priority">0.6</span>');
$this->assertRaw('<span class="xmlsitemap-priority-override">Yes</span>');
$this->assertRaw('<span class="xmlsitemap-inclusion">Yes</span>');
$this->assertRaw('<span class="xmlsitemap-inclusion-override">Yes</span>');
}

/**
* An exported view.
*
* @return view
* A view of nodes that displays the XML sitemap fields.
*/
private function nodeView() {
$view = new view();
$view->name = 'xmlsitemap_views_fields_nodes';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'XML sitemap node fields';
$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['title'] = 'XML sitemap node fields';
$handler->display->display_options['use_more_always'] = FALSE;
$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['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['style_options']['default_row_class'] = FALSE;
$handler->display->display_options['style_options']['row_class_special'] = FALSE;
$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']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = FALSE;
$handler->display->display_options['fields']['title']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['title']['link_to_node'] = FALSE;
/* Field: XML sitemap: Inclusion */
$handler->display->display_options['fields']['status']['id'] = 'status';
$handler->display->display_options['fields']['status']['table'] = 'xmlsitemap_node';
$handler->display->display_options['fields']['status']['field'] = 'status';
$handler->display->display_options['fields']['status']['element_type'] = 'span';
$handler->display->display_options['fields']['status']['element_class'] = 'xmlsitemap-inclusion';
$handler->display->display_options['fields']['status']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['status']['not'] = 0;
/* Field: XML sitemap: Inclusion override */
$handler->display->display_options['fields']['status_override']['id'] = 'status_override';
$handler->display->display_options['fields']['status_override']['table'] = 'xmlsitemap_node';
$handler->display->display_options['fields']['status_override']['field'] = 'status_override';
$handler->display->display_options['fields']['status_override']['element_type'] = 'span';
$handler->display->display_options['fields']['status_override']['element_class'] = 'xmlsitemap-inclusion-override';
$handler->display->display_options['fields']['status_override']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['status_override']['not'] = 0;
/* Field: XML sitemap: Priority */
$handler->display->display_options['fields']['priority']['id'] = 'priority';
$handler->display->display_options['fields']['priority']['table'] = 'xmlsitemap_node';
$handler->display->display_options['fields']['priority']['field'] = 'priority';
$handler->display->display_options['fields']['priority']['element_type'] = 'span';
$handler->display->display_options['fields']['priority']['element_class'] = 'xmlsitemap-priority';
$handler->display->display_options['fields']['priority']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['priority']['separator'] = '';
/* Field: XML sitemap: Priority override */
$handler->display->display_options['fields']['priority_override']['id'] = 'priority_override';
$handler->display->display_options['fields']['priority_override']['table'] = 'xmlsitemap_node';
$handler->display->display_options['fields']['priority_override']['field'] = 'priority_override';
$handler->display->display_options['fields']['priority_override']['element_type'] = 'span';
$handler->display->display_options['fields']['priority_override']['element_class'] = 'xmlsitemap-priority-override';
$handler->display->display_options['fields']['priority_override']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['priority_override']['not'] = 0;

/* Display: Page */
$handler = $view->new_display('page', 'Page', 'page');
$handler->display->display_options['path'] = 'xmlsitemap-node-fields';

return $view;
}

}
Loading

0 comments on commit 15f805e

Please sign in to comment.