summaryrefslogtreecommitdiff
path: root/tests/postgres_tests/test_search.py
diff options
context:
space:
mode:
authorJaap Roes <jaap.roes@gmail.com>2018-11-30 15:42:50 +0100
committerTim Graham <timograham@gmail.com>2018-11-30 09:42:50 -0500
commit8a1a9194686881e32d0e3aed52d7f4150238530c (patch)
tree09d4719948e903b392b7be1704d941fc427e0c50 /tests/postgres_tests/test_search.py
parent793a71b7be9970bee8cbac68985684628e99ad23 (diff)
Fixed #29997 -- Allowed combining SearchQuerys with different configs.
Seems to be a needless restriction in 978a00e39fee25cfa99065285b0de88366710fad.
Diffstat (limited to 'tests/postgres_tests/test_search.py')
-rw-r--r--tests/postgres_tests/test_search.py20
1 files changed, 16 insertions, 4 deletions
diff --git a/tests/postgres_tests/test_search.py b/tests/postgres_tests/test_search.py
index 912f17948d..303f4d8783 100644
--- a/tests/postgres_tests/test_search.py
+++ b/tests/postgres_tests/test_search.py
@@ -276,12 +276,24 @@ class TestCombinations(GrailTestData, PostgreSQLTestCase):
searched = Line.objects.filter(character=self.minstrel, dialogue__search=~SearchQuery('kneecaps'))
self.assertCountEqual(searched, [self.verse0, self.verse2])
- def test_query_config_mismatch(self):
- with self.assertRaisesMessage(TypeError, "SearchQuery configs don't match."):
- Line.objects.filter(
- dialogue__search=SearchQuery('kneecaps', config='german') |
+ def test_combine_different_configs(self):
+ searched = Line.objects.filter(
+ dialogue__search=(
+ SearchQuery('cadeau', config='french') |
SearchQuery('nostrils', config='english')
)
+ )
+ self.assertCountEqual(searched, [self.french, self.verse2])
+
+ @skipUnlessDBFeature('has_phraseto_tsquery')
+ def test_combine_raw_phrase(self):
+ searched = Line.objects.filter(
+ dialogue__search=(
+ SearchQuery('burn:*', search_type='raw', config='simple') |
+ SearchQuery('rode forth from Camelot', search_type='phrase')
+ )
+ )
+ self.assertCountEqual(searched, [self.verse0, self.verse1, self.verse2])
def test_query_combined_mismatch(self):
msg = "SearchQuery can only be combined with other SearchQuerys, got"