Mercurial > kallithea
view kallithea/tests/functional/test_search.py @ 8687:5e46f73f0d1c
model: always import the whole db module - drop "from" imports
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Mon, 12 Oct 2020 11:12:37 +0200 |
parents | e527cc2ce8dc |
children |
line wrap: on
line source
import mock from kallithea.tests import base class TestSearchController(base.TestController): def test_index(self): self.log_user() response = self.app.get(base.url(controller='search', action='index')) response.mustcontain('class="form-control" id="q" name="q" type="text"') # Test response... def test_empty_search(self, tmpdir): self.log_user() config_mock = { # can be any existing dir that does not contain an actual index 'index_dir': str(tmpdir), } with mock.patch('kallithea.controllers.search.config', config_mock): response = self.app.get(base.url(controller='search', action='index'), {'q': base.HG_REPO}) response.mustcontain('The server has no search index.') def test_normal_search(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'def repo'}) response.mustcontain('58 results') def test_repo_search(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'repository:%s def test' % base.HG_REPO}) response.mustcontain('18 results') def test_search_last(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'last:t', 'type': 'commit'}) response.mustcontain('2 results') def test_search_commit_message(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'bother to ask where to fetch repo during tests', 'type': 'commit'}) response.mustcontain('2 results') response.mustcontain('a00c1b6f5d7a6ae678fd553a8b81d92367f7ecf1') response.mustcontain('c6eb379775c578a95dad8ddab53f963b80894850') def test_search_commit_message_hg_repo(self): self.log_user() response = self.app.get(base.url(controller='search', action='index', repo_name=base.HG_REPO), {'q': 'bother to ask where to fetch repo during tests', 'type': 'commit'}) response.mustcontain('1 results') response.mustcontain('a00c1b6f5d7a6ae678fd553a8b81d92367f7ecf1') def test_search_commit_changed_file(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'changed:tests/utils.py', 'type': 'commit'}) response.mustcontain('29 results') def test_search_commit_changed_files_get_commit(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'changed:vcs/utils/archivers.py', 'type': 'commit'}) response.mustcontain('8 results') response.mustcontain('25213a5fbb048dff8ba65d21e466a835536e5b70') response.mustcontain('47aedd538bf616eedcb0e7d630ea476df0e159c7') response.mustcontain('f5d23247fad4856a1dabd5838afade1e0eed24fb') response.mustcontain('04ad456aefd6461aea24f90b63954b6b1ce07b3e') response.mustcontain('c994f0de03b2a0aa848a04fc2c0d7e737dba31fc') response.mustcontain('d1f898326327e20524fe22417c22d71064fe54a1') response.mustcontain('fe568b4081755c12abf6ba673ba777fc02a415f3') response.mustcontain('bafe786f0d8c2ff7da5c1dcfcfa577de0b5e92f1') def test_search_commit_added_file(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'added:README.rst', 'type': 'commit'}) response.mustcontain('2 results') # Hg response.mustcontain('3803844fdbd3b711175fc3da9bdacfcd6d29a6fb') # Git response.mustcontain('ff7ca51e58c505fec0dd2491de52c622bb7a806b') def test_search_author(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'author:marcin@python-blog.com raw_id:b986218ba1c9b0d6a259fac9b050b1724ed8e545', 'type': 'commit'}) response.mustcontain('1 results') def test_search_file_name(self): self.log_user() response = self.app.get(base.url(controller='search', action='index'), {'q': 'README.rst', 'type': 'path'}) response.mustcontain('2 results')