# HG changeset patch # User Marcin Kuzminski # Date 1358467282 -3600 # Node ID 87258a1370184c9b34f8eee3b0f7a5e26a8379e3 # Parent abd49f6f580531a5f675bfcb796f0e2facaefafd fixed issue with displaying repos in groups view (without lightweight dashboard), added tests for this case diff -r abd49f6f5805 -r 87258a137018 rhodecode/controllers/admin/repos_groups.py --- a/rhodecode/controllers/admin/repos_groups.py Fri Jan 18 00:50:06 2013 +0100 +++ b/rhodecode/controllers/admin/repos_groups.py Fri Jan 18 01:01:22 2013 +0100 @@ -295,7 +295,7 @@ c.groups = self.scm_model.get_repos_groups(groups) if c.visual.lightweight_dashboard is False: - c.repo_list = self.scm_model.get_repos(all_repos=gr_filter) + c.repos_list = self.scm_model.get_repos(all_repos=gr_filter) ## lightweight version of dashboard else: c.repos_list = Repository.query()\ @@ -303,10 +303,10 @@ .order_by(func.lower(Repository.repo_name))\ .all() - repos_data = RepoModel().get_repos_as_dict(repos_list=c.repos_list, - admin=False) - #json used to render the grid - c.data = json.dumps(repos_data) + repos_data = RepoModel().get_repos_as_dict(repos_list=c.repos_list, + admin=False) + #json used to render the grid + c.data = json.dumps(repos_data) return render('admin/repos_groups/repos_groups.html') diff -r abd49f6f5805 -r 87258a137018 rhodecode/tests/functional/test_home.py --- a/rhodecode/tests/functional/test_home.py Fri Jan 18 00:50:06 2013 +0100 +++ b/rhodecode/tests/functional/test_home.py Fri Jan 18 01:01:22 2013 +0100 @@ -3,6 +3,9 @@ from rhodecode.model.meta import Session from rhodecode.model.db import User, RhodeCodeSetting, Repository from rhodecode.lib.utils import set_rhodecode_config +from rhodecode.tests.models.common import _make_repo, _make_group +from rhodecode.model.repo import RepoModel +from rhodecode.model.repos_group import ReposGroupModel class TestHomeController(TestController): @@ -61,18 +64,46 @@ Session().add(anon) Session().commit() + def _set_l_dash(self, set_to): + self.app.post(url('admin_setting', setting_id='visual'), + params=dict(_method='put', + rhodecode_lightweight_dashboard=set_to,)) + def test_index_with_lightweight_dashboard(self): self.log_user() - - def set_l_dash(set_to): - self.app.post(url('admin_setting', setting_id='visual'), - params=dict(_method='put', - rhodecode_lightweight_dashboard=set_to,)) - - set_l_dash(True) + self._set_l_dash(True) try: response = self.app.get(url(controller='home', action='index')) response.mustcontain("""var data = {"totalRecords": %s""" % len(Repository.getAll())) finally: - set_l_dash(False) + self._set_l_dash(False) + + def test_index_page_on_groups(self): + self.log_user() + _make_repo(name='gr1/repo_in_group', repos_group=_make_group('gr1')) + Session().commit() + response = self.app.get(url('repos_group_home', group_name='gr1')) + + try: + response.mustcontain("""gr1/repo_in_group""") + finally: + RepoModel().delete('gr1/repo_in_group') + ReposGroupModel().delete(repos_group='gr1', force_delete=True) + Session().commit() + + def test_index_page_on_groups_with_lightweight_dashboard(self): + self.log_user() + self._set_l_dash(True) + _make_repo(name='gr1/repo_in_group', repos_group=_make_group('gr1')) + Session().commit() + response = self.app.get(url('repos_group_home', group_name='gr1')) + + try: + response.mustcontain("""gr1/repo_in_group""") + finally: + self._set_l_dash(False) + RepoModel().delete('gr1/repo_in_group') + ReposGroupModel().delete(repos_group='gr1', force_delete=True) + Session().commit() + \ No newline at end of file