class PostalCodeValidationTestCase in Postal Code Validation 7
Tests for postal_code_validation.
Hierarchy
- class \DrupalTestCase
- class \DrupalUnitTestCase
- class \PostalCodeValidationTestCase
- class \DrupalUnitTestCase
Expanded class hierarchy of PostalCodeValidationTestCase
File
- tests/
PostalCodeValidationTestCase.test, line 11 - Tests for postal_code_validation.
View source
class PostalCodeValidationTestCase extends DrupalUnitTestCase {
/**
* {@inheritdoc}
*/
public static function getInfo() {
return [
'name' => t('Postal Code Validation'),
'description' => t('Test the Postal Code Validation module.'),
'group' => t('Location'),
];
}
/**
* The tests.
*/
public function test() {
include_once __DIR__ . '/../postal_code_validation.module';
$supported_countries = postal_code_validation_get_supported_countries();
$countries_without_codes = postal_code_validation_get_countries_without_codes();
$dependencies = postal_code_validation_get_dependencies();
$array_intersect = array_intersect($countries_without_codes, $supported_countries);
$this
->assertTrue(count($array_intersect) === 0, 'No countries are listed as supported if they do not have a postal code system.' . implode(', ', $array_intersect));
$array_intersect = array_intersect($countries_without_codes, array_keys($dependencies));
$this
->assertTrue(count($array_intersect) === 0, 'No countries are listed as having no postal code system if they use the system of another country.' . implode(', ', $array_intersect));
$array_intersect = array_intersect($supported_countries, array_keys($dependencies));
$this
->assertTrue(count($array_intersect) === 0, 'No countries are listed as supported if they use the system of another country.' . implode(', ', $array_intersect));
$array_unique = array_unique($dependencies);
$array_intersect = array_intersect($supported_countries, $array_unique);
$this
->assertTrue(count($array_intersect) === count($array_unique), 'Only supported countries are listed as being the postal code system used by another country.' . implode(', ', array_diff($array_unique, $supported_countries)));
$missing_country_files = array();
$missing_country_functions = array();
foreach ($supported_countries as $country) {
$filename = __DIR__ . '/../countries/' . drupal_strtolower($country) . '.inc';
if (is_file($filename)) {
include_once $filename;
}
else {
$missing_country_files[] = $country;
}
if (!function_exists('_postal_code_validation_validate_' . $country)) {
$missing_country_functions[] = $country;
}
}
$this
->assertTrue(count($missing_country_files) === 0, 'Every supported country has a file in the countries directory.' . implode(', ', $missing_country_files));
$this
->assertTrue(count($missing_country_functions) === 0, 'Every supported country implements _postal_code_validation_validate_COUNTRYCODE().' . implode(', ', $missing_country_functions));
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
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:: |
public | property | Whether to cache the installation part of the setUp() method. | |
DrupalTestCase:: |
public | property | Whether to cache the modules installation part of the setUp() method. | |
DrupalTestCase:: |
protected | property | URL to the verbose output file directory. | |
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. | 1 |
DrupalTestCase:: |
public | function | Handle errors during test runs. | 1 |
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 | Returns the database connection to the site running Simpletest. | |
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 a verbose message in a text file. | |
DrupalUnitTestCase:: |
protected | function | Sets up unit test environment. | 9 |
DrupalUnitTestCase:: |
protected | function | 1 | |
DrupalUnitTestCase:: |
function |
Constructor for DrupalUnitTestCase. Overrides DrupalTestCase:: |
||
PostalCodeValidationTestCase:: |
public static | function | ||
PostalCodeValidationTestCase:: |
public | function | The tests. |