on eb182df help sign in
searx/tests/unit/test_query.py
64 lines 2.2 kB history raw
1from searx.query import RawTextQuery
2from searx.testing import SearxTestCase
5class TestQuery(SearxTestCase):
7 def test_simple_query(self):
8 query_text = 'the query'
9 query = RawTextQuery(query_text, [])
10 query.parse_query()
12 self.assertEquals(query.getFullQuery(), query_text)
13 self.assertEquals(len(query.query_parts), 1)
14 self.assertEquals(len(query.languages), 0)
15 self.assertFalse(query.specific)
17 def test_language_code(self):
18 language = 'es-ES'
19 query_text = 'the query'
20 full_query = ':' + language + ' ' + query_text
21 query = RawTextQuery(full_query, [])
22 query.parse_query()
24 self.assertEquals(query.getFullQuery(), full_query)
25 self.assertEquals(len(query.query_parts), 3)
26 self.assertEquals(len(query.languages), 1)
27 self.assertIn(language, query.languages)
28 self.assertFalse(query.specific)
30 def test_language_name(self):
31 language = 'english'
32 query_text = 'the query'
33 full_query = ':' + language + ' ' + query_text
34 query = RawTextQuery(full_query, [])
35 query.parse_query()
37 self.assertEquals(query.getFullQuery(), full_query)
38 self.assertEquals(len(query.query_parts), 3)
39 self.assertIn('en', query.languages)
40 self.assertFalse(query.specific)
42 def test_unlisted_language_code(self):
43 language = 'all'
44 query_text = 'the query'
45 full_query = ':' + language + ' ' + query_text
46 query = RawTextQuery(full_query, [])
47 query.parse_query()
49 self.assertEquals(query.getFullQuery(), full_query)
50 self.assertEquals(len(query.query_parts), 3)
51 self.assertIn('all', query.languages)
52 self.assertFalse(query.specific)
54 def test_invalid_language_code(self):
55 language = 'not_a_language'
56 query_text = 'the query'
57 full_query = ':' + language + ' ' + query_text
58 query = RawTextQuery(full_query, [])
59 query.parse_query()
61 self.assertEquals(query.getFullQuery(), full_query)
62 self.assertEquals(len(query.query_parts), 1)
63 self.assertEquals(len(query.languages), 0)
64 self.assertFalse(query.specific)