Files
@ 0f15f88e69c1
Branch filter:
Location: kallithea/rhodecode/tests/functional/test_home.py - annotation
0f15f88e69c1
4.1 KiB
text/x-python
changelog: don't select all checkboxes in the middle
The changesets in the log might not be linearly connected and intermediate
changesets might not be a part of the operation the range is used for.
Some way of highlighting the two selected changesets and some radio button
functionality would however be nice.
The changesets in the log might not be linearly connected and intermediate
changesets might not be a part of the operation the range is used for.
Some way of highlighting the two selected changesets and some radio button
functionality would however be nice.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | a2eaa0054430 7486da5f0628 a2eaa0054430 dbb311201ce3 dbb311201ce3 87258a137018 87258a137018 87258a137018 7486da5f0628 ef0613584ced 7486da5f0628 7486da5f0628 7486da5f0628 7486da5f0628 7486da5f0628 7486da5f0628 cbc63abe7d59 f4ce9416cbd5 0765fd5bf668 ef0613584ced 605707b50d7c ef0613584ced ef0613584ced 605707b50d7c ef0613584ced ef0613584ced ef0613584ced f467c75544af f467c75544af f467c75544af f467c75544af a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 a2eaa0054430 dbb311201ce3 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 dbb311201ce3 dbb311201ce3 87258a137018 dbb311201ce3 dbb311201ce3 dbb311201ce3 dbb311201ce3 dbb311201ce3 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 87258a137018 | import time
from rhodecode.tests import *
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):
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')
response.mustcontain('href="/%s"' % HG_REPO)
response.mustcontain("""<img class="icon" title="Mercurial repository" """
"""alt="Mercurial repository" src="/images/icons/hg"""
"""icon.png"/>""")
response.mustcontain("""<img class="icon" title="public repository" """
"""alt="public repository" src="/images/icons/lock_"""
"""open.png"/>""")
response.mustcontain(
"""<a title="Marcin Kuzminski &lt;marcin@python-works.com&gt;:\n
merge" class="tooltip" href="/vcs_test_hg/changeset/27cd5cce30c96924232"""
"""dffcd24178a07ffeb5dfc">r173:27cd5cce30c9</a>"""
)
def test_repo_summary_with_anonymous_access_disabled(self):
anon = User.get_by_username('default')
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_by_username('default')
anon.active = True
Session().add(anon)
Session().commit()
def test_index_with_anonymous_access_disabled(self):
anon = User.get_by_username('default')
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_by_username('default')
anon.active = True
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()
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:
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()
|