test_search.py
92 lines
| 3.5 KiB
| text/x-python
|
PythonLexer
r2459 | import os | |||
r547 | from rhodecode.tests import * | |||
from nose.plugins.skip import SkipTest | ||||
r2451 | ||||
r547 | class TestSearchController(TestController): | |||
def test_index(self): | ||||
self.log_user() | ||||
response = self.app.get(url(controller='search', action='index')) | ||||
r1401 | ||||
self.assertTrue('class="small" id="q" name="q" type="text"' in | ||||
response.body) | ||||
r547 | # Test response... | |||
def test_empty_search(self): | ||||
r688 | if os.path.isdir(self.index_location): | |||
r547 | raise SkipTest('skipped due to existing index') | |||
else: | ||||
self.log_user() | ||||
r1401 | response = self.app.get(url(controller='search', action='index'), | |||
r2451 | {'q': HG_REPO}) | |||
r1401 | self.assertTrue('There is no index to search in. ' | |||
'Please run whoosh indexer' in response.body) | ||||
r688 | ||||
r547 | def test_normal_search(self): | |||
self.log_user() | ||||
r1401 | response = self.app.get(url(controller='search', action='index'), | |||
r2451 | {'q': 'def repo'}) | |||
r2644 | response.mustcontain('39 results') | |||
r688 | ||||
r547 | def test_repo_search(self): | |||
self.log_user() | ||||
r1401 | response = self.app.get(url(controller='search', action='index'), | |||
r2451 | {'q': 'repository:%s def test' % HG_REPO}) | |||
response.mustcontain('4 results') | ||||
Indra Talip
|
r2640 | |||
def test_search_last(self): | ||||
self.log_user() | ||||
response = self.app.get(url(controller='search', action='index'), | ||||
{'q': 'last:t', 'type': 'commit'}) | ||||
r2644 | response.mustcontain('2 results') | |||
Indra Talip
|
r2640 | |||
def test_search_commit_message(self): | ||||
self.log_user() | ||||
response = self.app.get(url(controller='search', action='index'), | ||||
r2644 | {'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(url(controller='search', action='index', | ||||
search_repo=HG_REPO), | ||||
{'q': 'bother to ask where to fetch repo during tests', | ||||
'type': 'commit'}) | ||||
Indra Talip
|
r2640 | |||
response.mustcontain('1 results') | ||||
response.mustcontain('a00c1b6f5d7a6ae678fd553a8b81d92367f7ecf1') | ||||
def test_search_commit_changed_file(self): | ||||
self.log_user() | ||||
response = self.app.get(url(controller='search', action='index'), | ||||
{'q': 'changed:tests/utils.py', | ||||
'type': 'commit'}) | ||||
response.mustcontain('a00c1b6f5d7a6ae678fd553a8b81d92367f7ecf1') | ||||
def test_search_commit_added_file(self): | ||||
self.log_user() | ||||
response = self.app.get(url(controller='search', action='index'), | ||||
{'q': 'added:README.rst', | ||||
'type': 'commit'}) | ||||
r2644 | response.mustcontain('2 results') | |||
#HG | ||||
Indra Talip
|
r2640 | response.mustcontain('3803844fdbd3b711175fc3da9bdacfcd6d29a6fb') | ||
r2644 | #GIT | |||
response.mustcontain('ff7ca51e58c505fec0dd2491de52c622bb7a806b') | ||||
Indra Talip
|
r2640 | |||
def test_search_author(self): | ||||
self.log_user() | ||||
response = self.app.get(url(controller='search', action='index'), | ||||
r2644 | {'q': 'author:marcin@python-blog.com raw_id:b986218ba1c9b0d6a259fac9b050b1724ed8e545', | |||
'type': 'commit'}) | ||||
Indra Talip
|
r2640 | |||
response.mustcontain('1 results') | ||||