summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Rothstein <drothstein@gmail.com>2014-05-05 12:34:18 -0400
committerDavid Rothstein <drothstein@gmail.com>2014-05-05 12:34:18 -0400
commit9fb4d89ae8f875efd44de30a566baddc3e499b2e (patch)
tree2828d8a5e591f04759b09e40ed9499bb6e841cd1
parentf91bb951d18a50653cb1937f89b6e7134817c29b (diff)
downloadbrdo-9fb4d89ae8f875efd44de30a566baddc3e499b2e.tar.gz
brdo-9fb4d89ae8f875efd44de30a566baddc3e499b2e.tar.bz2
Issue #2065917 by SpadXIII, andrewbelcher, kboopathi: SelectQueryExtender::hasAnyTag uses hasAnyTags which doesn't exist.
-rw-r--r--includes/database/select.inc2
-rw-r--r--modules/simpletest/tests/database_test.test46
2 files changed, 47 insertions, 1 deletions
diff --git a/includes/database/select.inc b/includes/database/select.inc
index e036904be..70c03a283 100644
--- a/includes/database/select.inc
+++ b/includes/database/select.inc
@@ -596,7 +596,7 @@ class SelectQueryExtender implements SelectQueryInterface {
public function hasAnyTag() {
$args = func_get_args();
- return call_user_func_array(array($this->query, 'hasAnyTags'), $args);
+ return call_user_func_array(array($this->query, 'hasAnyTag'), $args);
}
public function addMetaData($key, $object) {
diff --git a/modules/simpletest/tests/database_test.test b/modules/simpletest/tests/database_test.test
index aa390bd43..c3f52551e 100644
--- a/modules/simpletest/tests/database_test.test
+++ b/modules/simpletest/tests/database_test.test
@@ -2622,6 +2622,52 @@ class DatabaseTaggingTestCase extends DatabaseTestCase {
}
/**
+ * Confirm that an extended query has a "tag" added to it.
+ */
+ function testExtenderHasTag() {
+ $query = db_select('test')
+ ->extend('SelectQueryExtender');
+ $query->addField('test', 'name');
+ $query->addField('test', 'age', 'age');
+
+ $query->addTag('test');
+
+ $this->assertTrue($query->hasTag('test'), 'hasTag() returned true.');
+ $this->assertFalse($query->hasTag('other'), 'hasTag() returned false.');
+ }
+
+ /**
+ * Test extended query tagging "has all of these tags" functionality.
+ */
+ function testExtenderHasAllTags() {
+ $query = db_select('test')
+ ->extend('SelectQueryExtender');
+ $query->addField('test', 'name');
+ $query->addField('test', 'age', 'age');
+
+ $query->addTag('test');
+ $query->addTag('other');
+
+ $this->assertTrue($query->hasAllTags('test', 'other'), 'hasAllTags() returned true.');
+ $this->assertFalse($query->hasAllTags('test', 'stuff'), 'hasAllTags() returned false.');
+ }
+
+ /**
+ * Test extended query tagging "has at least one of these tags" functionality.
+ */
+ function testExtenderHasAnyTag() {
+ $query = db_select('test')
+ ->extend('SelectQueryExtender');
+ $query->addField('test', 'name');
+ $query->addField('test', 'age', 'age');
+
+ $query->addTag('test');
+
+ $this->assertTrue($query->hasAnyTag('test', 'other'), 'hasAnyTag() returned true.');
+ $this->assertFalse($query->hasAnyTag('other', 'stuff'), 'hasAnyTag() returned false.');
+ }
+
+ /**
* Test that we can attach meta data to a query object.
*
* This is how we pass additional context to alter hooks.