Files
@ 2b5f94fc3b7a
Branch filter:
Location: kallithea/rhodecode/tests/functional/test_home.py - annotation
2b5f94fc3b7a
3.1 KiB
text/x-python
current revision will show workdir state, not the latest revision
a2eaa0054430 7486da5f0628 8a86836fad64 a2eaa0054430 8a86836fad64 87258a137018 87258a137018 7486da5f0628 ef0613584ced 8a86836fad64 8a86836fad64 8a86836fad64 7486da5f0628 7486da5f0628 7486da5f0628 7486da5f0628 7486da5f0628 7486da5f0628 cbc63abe7d59 1e5bb8ed77d6 1e5bb8ed77d6 1e5bb8ed77d6 1e5bb8ed77d6 0765fd5bf668 1e5bb8ed77d6 1e5bb8ed77d6 1e5bb8ed77d6 1e5bb8ed77d6 1e5bb8ed77d6 1e5bb8ed77d6 ef0613584ced ef0613584ced 1e5bb8ed77d6 1e5bb8ed77d6 1e5bb8ed77d6 f467c75544af a2eaa0054430 a2eaa0054430 a8f520540ab0 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a8f520540ab0 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a8f520540ab0 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a8f520540ab0 a2eaa0054430 a2eaa0054430 a2eaa0054430 dbb311201ce3 87258a137018 87258a137018 8a86836fad64 8a86836fad64 87258a137018 87258a137018 87258a137018 8a86836fad64 87258a137018 87258a137018 87258a137018 87258a137018 | 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()
|