test_search.py
38 lines
| 1.6 KiB
| text/x-python
|
PythonLexer
r406 | from pylons_app.tests import * | |||
r469 | from pylons_app.lib.indexers import IDX_LOCATION | |||
import os | ||||
from nose.plugins.skip import SkipTest | ||||
r406 | ||||
class TestSearchController(TestController): | ||||
def test_index(self): | ||||
r464 | self.log_user() | |||
r406 | response = self.app.get(url(controller='search', action='index')) | |||
r464 | print response.body | |||
r483 | assert 'class="small" id="q" name="q" type="text"' in response.body, 'Search box content error' | |||
r406 | # Test response... | |||
r464 | ||||
def test_empty_search(self): | ||||
r469 | ||||
if os.path.isdir(IDX_LOCATION): | ||||
raise SkipTest('skipped due to existing index') | ||||
else: | ||||
self.log_user() | ||||
r483 | response = self.app.get(url(controller='search', action='index'), {'q':'vcs_test'}) | |||
assert 'There is no index to search in. Please run whoosh indexer' in response.body, 'No error message about empty index' | ||||
r469 | ||||
def test_normal_search(self): | ||||
r464 | self.log_user() | |||
r483 | response = self.app.get(url(controller='search', action='index'), {'q':'def repo'}) | |||
r469 | print response.body | |||
r483 | assert '10 results' in response.body, 'no message about proper search results' | |||
assert 'Permission denied' not in response.body, 'Wrong permissions settings for that repo and user' | ||||
r469 | ||||
r483 | ||||
def test_repo_search(self): | ||||
self.log_user() | ||||
response = self.app.get(url(controller='search', action='index'), {'q':'repository:vcs_test def test'}) | ||||
print response.body | ||||
assert '4 results' in response.body, 'no message about proper search results' | ||||
assert 'Permission denied' not in response.body, 'Wrong permissions settings for that repo and user' | ||||