summaryrefslogtreecommitdiff
path: root/modules/simpletest/tests
diff options
context:
space:
mode:
Diffstat (limited to 'modules/simpletest/tests')
-rw-r--r--modules/simpletest/tests/database_test.test46
1 files changed, 46 insertions, 0 deletions
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.