diff rhodecode/tests/functional/test_search.py @ 547:1e757ac98988

renamed project to rhodecode
author Marcin Kuzminski <marcin@python-works.com>
date Wed, 06 Oct 2010 03:18:16 +0200
parents pylons_app/tests/functional/test_search.py@a9e50dce3081
children 8acbfa837180
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/rhodecode/tests/functional/test_search.py	Wed Oct 06 03:18:16 2010 +0200
@@ -0,0 +1,38 @@
+from rhodecode.tests import *
+from rhodecode.lib.indexers import IDX_LOCATION
+import os
+from nose.plugins.skip import SkipTest
+
+class TestSearchController(TestController):
+
+    def test_index(self):
+        self.log_user()
+        response = self.app.get(url(controller='search', action='index'))
+        print response.body
+        assert 'class="small" id="q" name="q" type="text"' in response.body, 'Search box content error'
+        # Test response...
+
+    def test_empty_search(self):
+        
+        if os.path.isdir(IDX_LOCATION):
+            raise SkipTest('skipped due to existing index')
+        else:
+            self.log_user()
+            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'
+        
+    def test_normal_search(self):
+        self.log_user()
+        response = self.app.get(url(controller='search', action='index'), {'q':'def repo'})
+        print response.body
+        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'
+        
+    
+    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'
+