diff options
author | David Rothstein <drothstein@gmail.com> | 2014-05-06 05:17:12 -0400 |
---|---|---|
committer | David Rothstein <drothstein@gmail.com> | 2014-05-06 05:17:12 -0400 |
commit | 709a0a5a33afb11f192d638d260c71e9069e10d7 (patch) | |
tree | b1141b6cc2e330ba3a2914fd7e956e2c9f01f6d9 /modules/simpletest/tests | |
parent | 9d558710106ff03e1ad4f55e447e24f62333b9f4 (diff) | |
download | brdo-709a0a5a33afb11f192d638d260c71e9069e10d7.tar.gz brdo-709a0a5a33afb11f192d638d260c71e9069e10d7.tar.bz2 |
Issue #2143461 by Sneakyvv: drupal_get_query_array() does not work correctly if a query parameter contains an equals sign.
Diffstat (limited to 'modules/simpletest/tests')
-rw-r--r-- | modules/simpletest/tests/common.test | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/modules/simpletest/tests/common.test b/modules/simpletest/tests/common.test index 25d5c8731..f6e03b006 100644 --- a/modules/simpletest/tests/common.test +++ b/modules/simpletest/tests/common.test @@ -2785,3 +2785,28 @@ class ArrayDiffUnitTest extends DrupalUnitTestCase { $this->assertIdentical(drupal_array_diff_assoc_recursive($this->array1, $this->array2), $expected); } } + +/** + * Tests the functionality of drupal_get_query_array(). + */ +class DrupalGetQueryArrayTestCase extends DrupalWebTestCase { + + public static function getInfo() { + return array( + 'name' => 'Query parsing using drupal_get_query_array()', + 'description' => 'Tests that drupal_get_query_array() correctly parses query parameters.', + 'group' => 'System', + ); + } + + /** + * Tests that drupal_get_query_array() correctly explodes query parameters. + */ + public function testDrupalGetQueryArray() { + $url = "http://my.site.com/somepath?foo=/content/folder[@name='foo']/folder[@name='bar']"; + $parsed = parse_url($url); + $result = drupal_get_query_array($parsed['query']); + $this->assertEqual($result['foo'], "/content/folder[@name='foo']/folder[@name='bar']", 'drupal_get_query_array() should only explode parameters on the first equals sign.'); + } + +} |