diff options
author | Marcin Kuzminski <marcin@python-works.com> | 2010-10-10 01:42:08 +0200 |
---|---|---|
committer | Marcin Kuzminski <marcin@python-works.com> | 2010-10-10 01:42:08 +0200 |
commit | cbcef8b9731edc247e61f44000fb606cf00bbb82 (patch) | |
tree | f6691cfe7d9a89f53b82a6d2b1c71d6b8f71b3b8 /rhodecode | |
parent | 77e715c91891928ab72aed7ebe6994a13b87564f (diff) |
fixed whoosh failure on new repository
added few tests
Diffstat (limited to 'rhodecode')
-rw-r--r-- | rhodecode/lib/indexers/daemon.py | 15 | ||||
-rw-r--r-- | rhodecode/lib/utils.py | 2 | ||||
-rw-r--r-- | rhodecode/tests/functional/test_changelog.py | 27 | ||||
-rw-r--r-- | rhodecode/tests/functional/test_login.py | 4 | ||||
-rw-r--r-- | rhodecode/tests/functional/test_repos.py | 31 | ||||
-rw-r--r-- | rhodecode/tests/functional/test_settings.py | 2 | ||||
-rw-r--r-- | rhodecode/tests/functional/test_summary.py | 5 |
7 files changed, 72 insertions, 14 deletions
diff --git a/rhodecode/lib/indexers/daemon.py b/rhodecode/lib/indexers/daemon.py index 85ad3a7e..be52f4bf 100644 --- a/rhodecode/lib/indexers/daemon.py +++ b/rhodecode/lib/indexers/daemon.py @@ -40,7 +40,7 @@ from shutil import rmtree from rhodecode.lib.indexers import INDEX_EXTENSIONS, IDX_LOCATION, SCHEMA, IDX_NAME from time import mktime -from vcs.exceptions import ChangesetError +from vcs.exceptions import ChangesetError, RepositoryError import logging @@ -86,13 +86,16 @@ class WhooshIndexingDaemon(object): based on repository walk function """ index_paths_ = set() - for topnode, dirs, files in repo.walk('/', 'tip'): - for f in files: - index_paths_.add(jn(repo.path, f.path)) - for dir in dirs: + try: + for topnode, dirs, files in repo.walk('/', 'tip'): for f in files: index_paths_.add(jn(repo.path, f.path)) - + for dir in dirs: + for f in files: + index_paths_.add(jn(repo.path, f.path)) + + except RepositoryError: + pass return index_paths_ def get_node(self, repo, path): diff --git a/rhodecode/lib/utils.py b/rhodecode/lib/utils.py index 5dc8ac9f..e9b2f7c8 100644 --- a/rhodecode/lib/utils.py +++ b/rhodecode/lib/utils.py @@ -467,8 +467,8 @@ def create_test_env(repos_test_path, config): log.addHandler(ch) #PART ONE create db - log.debug('making test db in %s', repos_test_path) dbname = config['sqlalchemy.db1.url'].split('/')[-1] + log.debug('making test db %s', dbname) dbmanage = DbManage(log_sql=True, dbname=dbname, root=config['here'], tests=True) diff --git a/rhodecode/tests/functional/test_changelog.py b/rhodecode/tests/functional/test_changelog.py index 1f6f559e..2c7cf645 100644 --- a/rhodecode/tests/functional/test_changelog.py +++ b/rhodecode/tests/functional/test_changelog.py @@ -4,5 +4,28 @@ class TestChangelogController(TestController): def test_index(self): self.log_user() - response = self.app.get(url(controller='changelog', action='index',repo_name='vcs_test')) - # Test response... + response = self.app.get(url(controller='changelog', action='index', repo_name='vcs_test')) + + print response + assert """<div id="chg_20" class="container">""" in response.body, 'wrong info about number ofchanges' + assert """Small update at simplevcs app""" in response.body, 'missing info about commit message' + assert """<span class="removed" title="removed">0</span>""" in response.body, 'wrong info about removed nodes' + assert """<span class="changed" title="changed">2</span>""" in response.body, 'wrong info about changed nodes' + assert """<span class="added" title="added">1</span>""" in response.body, 'wrong info about added nodes' + + #pagination + + response = self.app.get(url(controller='changelog', action='index', repo_name='vcs_test'), {'page':1}) + response = self.app.get(url(controller='changelog', action='index', repo_name='vcs_test'), {'page':2}) + response = self.app.get(url(controller='changelog', action='index', repo_name='vcs_test'), {'page':3}) + response = self.app.get(url(controller='changelog', action='index', repo_name='vcs_test'), {'page':4}) + response = self.app.get(url(controller='changelog', action='index', repo_name='vcs_test'), {'page':5}) + response = self.app.get(url(controller='changelog', action='index', repo_name='vcs_test'), {'page':6}) + # Test response after pagination... + + assert """<span class="removed" title="removed">20</span>"""in response.body, 'wrong info about number of removed' + assert """<span class="changed" title="changed">1</span>"""in response.body, 'wrong info about number of changes' + assert """<span class="added" title="added">0</span>"""in response.body, 'wrong info about number of added' + assert """<div class="date">commit 64: 46ad32a4f974@2010-04-20 00:33:21</div>"""in response.body, 'wrong info about commit 64' + assert """<div class="message"><a href="/vcs_test/changeset/46ad32a4f974">Merge with 2e6a2bf9356ca56df08807f4ad86d480da72a8f4</a></div>"""in response.body, 'wrong info about commit 64 is a merge' + diff --git a/rhodecode/tests/functional/test_login.py b/rhodecode/tests/functional/test_login.py index c2b2efd3..97c82a90 100644 --- a/rhodecode/tests/functional/test_login.py +++ b/rhodecode/tests/functional/test_login.py @@ -47,8 +47,8 @@ class TestLoginController(TestController): {'username':'error', 'password':'test'}) assert response.status == '200 OK', 'Wrong response from login page' - - assert 'Enter a value 6 characters long or more' in response.body, 'No error password message in response' + print response.body + assert 'Enter 6 characters or more' in response.body, 'No error password message in response' def test_login_wrong_username_password(self): response = self.app.post(url(controller='login', action='index'), diff --git a/rhodecode/tests/functional/test_repos.py b/rhodecode/tests/functional/test_repos.py index 2ebe2ca0..fa21aef5 100644 --- a/rhodecode/tests/functional/test_repos.py +++ b/rhodecode/tests/functional/test_repos.py @@ -1,8 +1,10 @@ +from rhodecode.model.db import Repository from rhodecode.tests import * class TestReposController(TestController): def test_index(self): + self.log_user() response = self.app.get(url('repos')) # Test response... @@ -10,9 +12,35 @@ class TestReposController(TestController): response = self.app.get(url('formatted_repos', format='xml')) def test_create(self): - response = self.app.post(url('repos')) + self.log_user() + repo_name = 'vcs_test_new' + description = 'description for newly created repo' + private = False + response = self.app.post(url('repos'), {'repo_name':repo_name, + 'description':description, + 'private':private}) + + print response + + #test if we have a message that fork is ok + assert '''created repository %s''' % (repo_name) in response.session['flash'][0], 'No flash message about new repo' + + #test if the fork was created in the database + new_repo = self.sa.query(Repository).filter(Repository.repo_name == repo_name).one() + + assert new_repo.repo_name == repo_name, 'wrong name of repo name in db' + assert new_repo.description == description, 'wrong description' + + #test if repository is visible in the list ? + response = response.follow() + + assert repo_name in response.body, 'missing new repo from the main repos list' + + + def test_new(self): + self.log_user() response = self.app.get(url('new_repo')) def test_new_as_xml(self): @@ -31,6 +59,7 @@ class TestReposController(TestController): response = self.app.post(url('repo', repo_name='vcs_test'), params=dict(_method='delete')) def test_show(self): + self.log_user() response = self.app.get(url('repo', repo_name='vcs_test')) def test_show_as_xml(self): diff --git a/rhodecode/tests/functional/test_settings.py b/rhodecode/tests/functional/test_settings.py index c5ce1580..09ff35e3 100644 --- a/rhodecode/tests/functional/test_settings.py +++ b/rhodecode/tests/functional/test_settings.py @@ -37,7 +37,7 @@ class TestSettingsController(TestController): fork_repo = self.sa.query(Repository).filter(Repository.repo_name == fork_name).one() assert fork_repo.repo_name == fork_name, 'wrong name of repo name in new db fork repo' - assert fork_repo.fork.repo_name == repo_name, 'wron fork parrent' + assert fork_repo.fork.repo_name == repo_name, 'wrong fork parrent' #test if fork is visible in the list ? diff --git a/rhodecode/tests/functional/test_summary.py b/rhodecode/tests/functional/test_summary.py index 245cd168..76934236 100644 --- a/rhodecode/tests/functional/test_summary.py +++ b/rhodecode/tests/functional/test_summary.py @@ -4,5 +4,8 @@ class TestSummaryController(TestController): def test_index(self): self.log_user() - response = self.app.get(url(controller='summary', action='index',repo_name='vcs_test')) + response = self.app.get(url(controller='summary', action='index', repo_name='vcs_test')) + print response + assert """<img style="margin-bottom:2px" class="icon" title="public repository" alt="public" src="/images/icons/lock_open.png"/>""" in response.body + # Test response... |