class ValidUrlTestCase
Test for valid_url().
Hierarchy
- class \DrupalTestCase
- class \DrupalUnitTestCase
- class \ValidUrlTestCase
- class \DrupalUnitTestCase
Expanded class hierarchy of ValidUrlTestCase
File
- drupal-7.x/
modules/ simpletest/ tests/ common.test, line 1930 - Tests for common.inc functionality.
View source
class ValidUrlTestCase extends DrupalUnitTestCase {
public static function getInfo() {
return array(
'name' => 'Valid URL',
'description' => "Performs tests on Drupal's valid URL function.",
'group' => 'System'
);
}
/**
* Test valid absolute URLs.
*/
function testValidAbsolute() {
$url_schemes = array('http', 'https', 'ftp');
$valid_absolute_urls = array(
'example.com',
'www.example.com',
'ex-ample.com',
'3xampl3.com',
'example.com/paren(the)sis',
'example.com/index.html#pagetop',
'example.com:8080',
'subdomain.example.com',
'example.com/index.php?q=node',
'example.com/index.php?q=node¶m=false',
'user@www.example.com',
'user:pass@www.example.com:8080/login.php?do=login&style=%23#pagetop',
'127.0.0.1',
'example.org?',
'john%20doe:secret:foo@example.org/',
'example.org/~,$\'*;',
'caf%C3%A9.example.org',
'[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html',
);
foreach ($url_schemes as $scheme) {
foreach ($valid_absolute_urls as $url) {
$test_url = $scheme . '://' . $url;
$valid_url = valid_url($test_url, TRUE);
$this->assertTrue($valid_url, format_string('@url is a valid url.', array('@url' => $test_url)));
}
}
}
/**
* Test invalid absolute URLs.
*/
function testInvalidAbsolute() {
$url_schemes = array('http', 'https', 'ftp');
$invalid_ablosule_urls = array(
'',
'ex!ample.com',
'ex%ample.com',
);
foreach ($url_schemes as $scheme) {
foreach ($invalid_ablosule_urls as $url) {
$test_url = $scheme . '://' . $url;
$valid_url = valid_url($test_url, TRUE);
$this->assertFalse($valid_url, format_string('@url is NOT a valid url.', array('@url' => $test_url)));
}
}
}
/**
* Test valid relative URLs.
*/
function testValidRelative() {
$valid_relative_urls = array(
'paren(the)sis',
'index.html#pagetop',
'index.php?q=node',
'index.php?q=node¶m=false',
'login.php?do=login&style=%23#pagetop',
);
foreach (array('', '/') as $front) {
foreach ($valid_relative_urls as $url) {
$test_url = $front . $url;
$valid_url = valid_url($test_url);
$this->assertTrue($valid_url, format_string('@url is a valid url.', array('@url' => $test_url)));
}
}
}
/**
* Test invalid relative URLs.
*/
function testInvalidRelative() {
$invalid_relative_urls = array(
'ex^mple',
'example<>',
'ex%ample',
);
foreach (array('', '/') as $front) {
foreach ($invalid_relative_urls as $url) {
$test_url = $front . $url;
$valid_url = valid_url($test_url);
$this->assertFALSE($valid_url, format_string('@url is NOT a valid url.', array('@url' => $test_url)));
}
}
}
}
Members
Name | Modifiers | Type | Description |
---|---|---|---|
DrupalTestCase:: |
protected | property | Assertions thrown in that test case. |
DrupalTestCase:: |
protected | property | The database prefix of this test run. |
DrupalTestCase:: |
protected | property | The original file directory, before it was changed for testing purposes. |
DrupalTestCase:: |
public | property | Current results of this test case. |
DrupalTestCase:: |
protected | property | Flag to indicate whether the test has been set up. |
DrupalTestCase:: |
protected | property | |
DrupalTestCase:: |
protected | property | |
DrupalTestCase:: |
protected | property | This class is skipped when looking for the source of an assertion. |
DrupalTestCase:: |
protected | property | The test run ID. |
DrupalTestCase:: |
protected | property | Time limit for the test. |
DrupalTestCase:: |
protected | function | Internal helper: stores the assert. |
DrupalTestCase:: |
protected | function | Check to see if two values are equal. |
DrupalTestCase:: |
protected | function | Check to see if a value is false (an empty string, 0, NULL, or FALSE). |
DrupalTestCase:: |
protected | function | Check to see if two values are identical. |
DrupalTestCase:: |
protected | function | Check to see if two values are not equal. |
DrupalTestCase:: |
protected | function | Check to see if two values are not identical. |
DrupalTestCase:: |
protected | function | Check to see if a value is not NULL. |
DrupalTestCase:: |
protected | function | Check to see if a value is NULL. |
DrupalTestCase:: |
protected | function | Check to see if a value is not false (not an empty string, 0, NULL, or FALSE). |
DrupalTestCase:: |
public static | function | Delete an assertion record by message ID. |
DrupalTestCase:: |
protected | function | Fire an error assertion. |
DrupalTestCase:: |
public | function | Handle errors during test runs. |
DrupalTestCase:: |
protected | function | Handle exceptions. |
DrupalTestCase:: |
protected | function | Fire an assertion that is always negative. |
DrupalTestCase:: |
public static | function | Converts a list of possible parameters into a stack of permutations. |
DrupalTestCase:: |
protected | function | Cycles through backtrace until the first non-assertion method is found. |
DrupalTestCase:: |
public static | function | Store an assertion from outside the testing context. |
DrupalTestCase:: |
protected | function | Fire an assertion that is always positive. |
DrupalTestCase:: |
public static | function | Generates a random string containing letters and numbers. |
DrupalTestCase:: |
public static | function | Generates a random string of ASCII characters of codes 32 to 126. |
DrupalTestCase:: |
public | function | Run all tests in this class. |
DrupalTestCase:: |
protected | function | Logs verbose message in a text file. |
DrupalUnitTestCase:: |
protected | function | Sets up unit test environment. |
DrupalUnitTestCase:: |
protected | function | |
DrupalUnitTestCase:: |
function |
Constructor for DrupalUnitTestCase. Overrides DrupalTestCase:: |
|
ValidUrlTestCase:: |
public static | function | |
ValidUrlTestCase:: |
function | Test invalid absolute URLs. | |
ValidUrlTestCase:: |
function | Test invalid relative URLs. | |
ValidUrlTestCase:: |
function | Test valid absolute URLs. | |
ValidUrlTestCase:: |
function | Test valid relative URLs. |