From 8d71420b4511fdac63c39f33d93c7add1ea7716d Mon Sep 17 00:00:00 2001 From: Marc Abonce Seguin Date: Mon, 29 Jul 2019 21:25:05 -0700 Subject: [mod] separate index and search routes This makes it easier to separately handle search and index requests from a web server or from a reverse proxy. If a request to index contains a query, a permanent redirect HTTP response is returned. This should give some level of backwards compatibility for users that have set a searx instance in their browser's search bar. --- tests/unit/test_webapp.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'tests') diff --git a/tests/unit/test_webapp.py b/tests/unit/test_webapp.py index 7dd465898..08a266931 100644 --- a/tests/unit/test_webapp.py +++ b/tests/unit/test_webapp.py @@ -77,6 +77,11 @@ class ViewsTestCase(SearxTestCase): def test_index_html(self): result = self.app.post('/', data={'q': 'test'}) + self.assertEqual(result.status_code, 308) + + def test_search_html(self): + result = self.app.post('/search', data={'q': 'test'}) + self.assertIn( b'

youtubeSecond Test

', # noqa result.data @@ -88,7 +93,10 @@ class ViewsTestCase(SearxTestCase): def test_index_json(self): result = self.app.post('/', data={'q': 'test', 'format': 'json'}) + self.assertEqual(result.status_code, 308) + def test_search_json(self): + result = self.app.post('/search', data={'q': 'test', 'format': 'json'}) result_dict = json.loads(result.data.decode()) self.assertEqual('test', result_dict['query']) @@ -98,6 +106,10 @@ class ViewsTestCase(SearxTestCase): def test_index_csv(self): result = self.app.post('/', data={'q': 'test', 'format': 'csv'}) + self.assertEqual(result.status_code, 308) + + def test_search_csv(self): + result = self.app.post('/search', data={'q': 'test', 'format': 'csv'}) self.assertEqual( b'title,url,content,host,engine,score,type\r\n' @@ -108,6 +120,10 @@ class ViewsTestCase(SearxTestCase): def test_index_rss(self): result = self.app.post('/', data={'q': 'test', 'format': 'rss'}) + self.assertEqual(result.status_code, 308) + + def test_index_rss(self): + result = self.app.post('/search', data={'q': 'test', 'format': 'rss'}) self.assertIn( b'Search results for "test" - searx', -- cgit v1.2.3-54-g00ecf