xmlsitemap_engines.test in XML sitemap 6.2
Same filename and directory in other branches
Tests for the xmlsitemap_engines module.
File
xmlsitemap_engines/tests/xmlsitemap_engines.testView source
<?php
/**
* @file
* Tests for the xmlsitemap_engines module.
*/
class XMLSitemapEnginesFunctionalTest extends XMLSitemapTestHelper {
protected $submit_url;
public static function getInfo() {
return array(
'name' => 'XML sitemap engines functional tests',
'description' => 'Functional tests for the XML sitemap engines module.',
'group' => 'XML sitemap',
);
}
function setUp($modules = array()) {
$modules[] = 'xmlsitemap_engines';
$modules[] = 'xmlsitemap_engines_test';
parent::setUp($modules);
$this->admin_user = $this
->drupalCreateUser(array(
'access content',
'administer xmlsitemap',
));
$this
->drupalLogin($this->admin_user);
$this->submit_url = url('ping', array(
'absolute' => TRUE,
'query' => array(
'sitemap' => '',
),
)) . '[sitemap]';
}
function submitEngines() {
variable_set('xmlsitemap_engines_submit_last', REQUEST_TIME - 10000);
variable_set('xmlsitemap_generated_last', REQUEST_TIME - 100);
variable_set('xmlsitemap_engines_minimum_lifetime', 0);
xmlsitemap_engines_cron();
$this
->assertTrue(variable_get('xmlsitemap_engines_submit_last', 0) > REQUEST_TIME - 100, 'Submitted the sitemaps to search engines.');
}
function testPrepareURL() {
$sitemap = 'http://example.com/sitemap.xml';
$input = 'http://example.com/ping?sitemap=[sitemap]&foo=bar';
$output = 'http://example.com/ping?sitemap=http://example.com/sitemap.xml&foo=bar';
$this
->assertEqual(xmlsitemap_engines_prepare_url($input, $sitemap), $output);
}
function testSubmitSitemaps() {
$sitemaps = array();
$sitemap = new stdClass();
$sitemap->uri = array(
'path' => 'http://example.com/sitemap.xml',
'options' => array(),
);
$sitemaps[] = $sitemap;
$sitemap = new stdClass();
$sitemap->uri = array(
'path' => 'http://example.com/sitemap-2.xml',
'options' => array(),
);
$sitemaps[] = $sitemap;
xmlsitemap_engines_submit_sitemaps($this->submit_url, $sitemaps);
$this
->assertWatchdogMessage(array(
'type' => 'xmlsitemap',
'message' => 'Recieved ping for @sitemap.',
'variables' => array(
'@sitemap' => 'http://example.com/sitemap.xml',
),
));
$this
->assertWatchdogMessage(array(
'type' => 'xmlsitemap',
'message' => 'Recieved ping for @sitemap.',
'variables' => array(
'@sitemap' => 'http://example.com/sitemap-2.xml',
),
));
}
function testPing() {
$edit = array(
'xmlsitemap_engines_engines[simpletest]' => TRUE,
);
$this
->drupalPost('admin/settings/xmlsitemap/engines', $edit, t('Save configuration'));
$this
->assertText(t('The configuration options have been saved.'));
$this
->submitEngines();
$this
->assertWatchdogMessage(array(
'type' => 'xmlsitemap',
'message' => 'Submitted the sitemap to %url and received response @code.',
));
$this
->assertWatchdogMessage(array(
'type' => 'xmlsitemap',
'message' => 'Recieved ping for @sitemap.',
));
}
function testCustomURL() {
$edit = array(
'xmlsitemap_engines_custom_urls' => 'an-invalid-url',
);
$this
->drupalPost('admin/settings/xmlsitemap/engines', $edit, t('Save configuration'));
$this
->assertText('Invalid URL an-invalid-url.');
$this
->assertNoText('The configuration options have been saved.');
$url = url('ping', array(
'absolute' => TRUE,
));
$edit = array(
'xmlsitemap_engines_custom_urls' => $url,
);
$this
->drupalPost('admin/settings/xmlsitemap/engines', $edit, t('Save configuration'));
$this
->assertText(t('The configuration options have been saved.'));
$this
->submitEngines();
$this
->assertWatchdogMessage(array(
'type' => 'xmlsitemap',
'message' => 'Submitted the sitemap to %url and received response @code.',
'variables' => array(
'%url' => $url,
'@code' => '404',
),
));
$this
->assertWatchdogMessage(array(
'type' => 'xmlsitemap',
'message' => 'No valid sitemap parameter provided.',
));
$this
->assertWatchdogMessage(array(
'type' => 'page not found',
'message' => 'ping',
));
$edit = array(
'xmlsitemap_engines_custom_urls' => $this->submit_url,
);
$this
->drupalPost('admin/settings/xmlsitemap/engines', $edit, t('Save configuration'));
$this
->assertText(t('The configuration options have been saved.'));
$this
->submitEngines();
$url = xmlsitemap_engines_prepare_url($this->submit_url, url('sitemap.xml', array(
'absolute' => TRUE,
)));
$this
->assertWatchdogMessage(array(
'type' => 'xmlsitemap',
'message' => 'Submitted the sitemap to %url and received response @code.',
'variables' => array(
'%url' => $url,
'@code' => '200',
),
));
$this
->assertWatchdogMessage(array(
'type' => 'xmlsitemap',
'message' => 'Recieved ping for @sitemap.',
'variables' => array(
'@sitemap' => url('sitemap.xml', array(
'absolute' => TRUE,
)),
),
));
}
}
Classes
Name![]() |
Description |
---|---|
XMLSitemapEnginesFunctionalTest | @file Tests for the xmlsitemap_engines module. |