Mercurial > kallithea
view rhodecode/tests/functional/test_home.py @ 3752:1e5bb8ed77d6 beta
index: always use lightweight - there shouldn't be any reason not to
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Mon, 08 Apr 2013 17:57:58 +0200 |
parents | a8f520540ab0 |
children | d7488551578e |
line wrap: on
line source
import time from rhodecode.tests import * from rhodecode.tests.fixture import Fixture from rhodecode.model.meta import Session from rhodecode.model.db import User, Repository from rhodecode.model.repo import RepoModel from rhodecode.model.repos_group import ReposGroupModel fixture = Fixture() class TestHomeController(TestController): def test_index(self): self.log_user() response = self.app.get(url(controller='home', action='index')) #if global permission is set response.mustcontain('Add repository') # html in javascript variable: response.mustcontain("""var data = {"totalRecords": %s""" % len(Repository.getAll())) response.mustcontain(r'href=\"/%s\"' % HG_REPO) response.mustcontain(r"""<img class=\"icon\" title=\"Mercurial repository\" """ r"""alt=\"Mercurial repository\" src=\"/images/icons/hg""" r"""icon.png\"/>""") response.mustcontain(r"""<img class=\"icon\" title=\"Public repository\" """ r"""alt=\"Public repository\" src=\"/images/icons/lock_""" r"""open.png\"/>""") response.mustcontain( r"""<a title=\"Marcin Kuzminski &lt;marcin@python-works.com&gt;:\n\n""" r"""merge\" class=\"tooltip\" href=\"/vcs_test_hg/changeset/27cd5cce30c96924232""" r"""dffcd24178a07ffeb5dfc\">r173:27cd5cce30c9</a>""" ) def test_repo_summary_with_anonymous_access_disabled(self): anon = User.get_default_user() anon.active = False Session().add(anon) Session().commit() time.sleep(1.5) # must sleep for cache (1s to expire) try: response = self.app.get(url(controller='summary', action='index', repo_name=HG_REPO), status=302) assert 'login' in response.location finally: anon = User.get_default_user() anon.active = True Session().add(anon) Session().commit() def test_index_with_anonymous_access_disabled(self): anon = User.get_default_user() anon.active = False Session().add(anon) Session().commit() time.sleep(1.5) # must sleep for cache (1s to expire) try: response = self.app.get(url(controller='home', action='index'), status=302) assert 'login' in response.location finally: anon = User.get_default_user() anon.active = True Session().add(anon) Session().commit() def test_index_page_on_groups(self): self.log_user() gr = fixture.create_group('gr1') fixture.create_repo(name='gr1/repo_in_group', repos_group=gr) 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()