From 7edd06a9cf0e7207d21d4afc819fac80e1288ff0 Mon Sep 17 00:00:00 2001 From: Hannes Ljungberg Date: Fri, 24 Jan 2020 22:23:30 +0000 Subject: Improved SearchVectorCombinable and SearchQueryCombinable error messages. --- tests/postgres_tests/test_search.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'tests/postgres_tests') diff --git a/tests/postgres_tests/test_search.py b/tests/postgres_tests/test_search.py index 07b1f9e9b4..068a4afe93 100644 --- a/tests/postgres_tests/test_search.py +++ b/tests/postgres_tests/test_search.py @@ -289,6 +289,14 @@ class TestCombinations(GrailTestData, PostgreSQLTestCase): ).filter(search='bedemir') self.assertCountEqual(searched, [self.bedemir0, self.bedemir1, self.crowd, self.witch, self.duck]) + def test_vector_combined_mismatch(self): + msg = ( + 'SearchVector can only be combined with other SearchVector ' + 'instances, got NoneType.' + ) + with self.assertRaisesMessage(TypeError, msg): + Line.objects.filter(dialogue__search=None + SearchVector('character__name')) + def test_query_and(self): searched = Line.objects.annotate( search=SearchVector('scene__setting', 'dialogue'), @@ -340,7 +348,10 @@ class TestCombinations(GrailTestData, PostgreSQLTestCase): 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" + msg = ( + 'SearchQuery can only be combined with other SearchQuery ' + 'instances, got NoneType.' + ) with self.assertRaisesMessage(TypeError, msg): Line.objects.filter(dialogue__search=None | SearchQuery('kneecaps')) -- cgit v1.3