Mercurial > kallithea
comparison rhodecode/tests/functional/test_admin_repos.py @ 3647:8a86836fad64 beta
more usage of fixture tools
in tests
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Mon, 01 Apr 2013 23:45:25 +0200 |
parents | aef5f5ce5ead |
children | 28305020a4ed |
comparison
equal
deleted
inserted
replaced
3646:63e49418a4cc | 3647:8a86836fad64 |
---|---|
8 Permission | 8 Permission |
9 from rhodecode.tests import * | 9 from rhodecode.tests import * |
10 from rhodecode.model.repos_group import ReposGroupModel | 10 from rhodecode.model.repos_group import ReposGroupModel |
11 from rhodecode.model.repo import RepoModel | 11 from rhodecode.model.repo import RepoModel |
12 from rhodecode.model.meta import Session | 12 from rhodecode.model.meta import Session |
13 from rhodecode.tests.fixture import Fixture | |
14 | |
15 fixture = Fixture() | |
13 | 16 |
14 | 17 |
15 def _get_permission_for_user(user, repo): | 18 def _get_permission_for_user(user, repo): |
16 perm = UserRepoToPerm.query()\ | 19 perm = UserRepoToPerm.query()\ |
17 .filter(UserRepoToPerm.repository == | 20 .filter(UserRepoToPerm.repository == |
34 def test_create_hg(self): | 37 def test_create_hg(self): |
35 self.log_user() | 38 self.log_user() |
36 repo_name = NEW_HG_REPO | 39 repo_name = NEW_HG_REPO |
37 description = 'description for newly created repo' | 40 description = 'description for newly created repo' |
38 response = self.app.post(url('repos'), | 41 response = self.app.post(url('repos'), |
39 _get_repo_create_params(repo_private=False, | 42 fixture._get_repo_create_params(repo_private=False, |
40 repo_name=repo_name, | 43 repo_name=repo_name, |
41 repo_description=description)) | 44 repo_description=description)) |
42 self.checkSessionFlash(response, | 45 self.checkSessionFlash(response, |
43 'Created repository <a href="/%s">%s</a>' | 46 'Created repository <a href="/%s">%s</a>' |
44 % (repo_name, repo_name)) | 47 % (repo_name, repo_name)) |
68 repo_name_unicode = repo_name.decode('utf8') | 71 repo_name_unicode = repo_name.decode('utf8') |
69 description = 'description for newly created repo' + non_ascii | 72 description = 'description for newly created repo' + non_ascii |
70 description_unicode = description.decode('utf8') | 73 description_unicode = description.decode('utf8') |
71 private = False | 74 private = False |
72 response = self.app.post(url('repos'), | 75 response = self.app.post(url('repos'), |
73 _get_repo_create_params(repo_private=False, | 76 fixture._get_repo_create_params(repo_private=False, |
74 repo_name=repo_name, | 77 repo_name=repo_name, |
75 repo_description=description)) | 78 repo_description=description)) |
76 self.checkSessionFlash(response, | 79 self.checkSessionFlash(response, |
77 u'Created repository <a href="/%s">%s</a>' | 80 u'Created repository <a href="/%s">%s</a>' |
78 % (urllib.quote(repo_name), repo_name_unicode)) | 81 % (urllib.quote(repo_name), repo_name_unicode)) |
106 | 109 |
107 repo_name = 'ingroup' | 110 repo_name = 'ingroup' |
108 repo_name_full = RepoGroup.url_sep().join([group_name, repo_name]) | 111 repo_name_full = RepoGroup.url_sep().join([group_name, repo_name]) |
109 description = 'description for newly created repo' | 112 description = 'description for newly created repo' |
110 response = self.app.post(url('repos'), | 113 response = self.app.post(url('repos'), |
111 _get_repo_create_params(repo_private=False, | 114 fixture._get_repo_create_params(repo_private=False, |
112 repo_name=repo_name, | 115 repo_name=repo_name, |
113 repo_description=description, | 116 repo_description=description, |
114 repo_group=gr.group_id,)) | 117 repo_group=gr.group_id,)) |
115 | 118 |
116 self.checkSessionFlash(response, | 119 self.checkSessionFlash(response, |
144 self.log_user() | 147 self.log_user() |
145 repo_name = NEW_GIT_REPO | 148 repo_name = NEW_GIT_REPO |
146 description = 'description for newly created repo' | 149 description = 'description for newly created repo' |
147 | 150 |
148 response = self.app.post(url('repos'), | 151 response = self.app.post(url('repos'), |
149 _get_repo_create_params(repo_private=False, | 152 fixture._get_repo_create_params(repo_private=False, |
150 repo_type='git', | 153 repo_type='git', |
151 repo_name=repo_name, | 154 repo_name=repo_name, |
152 repo_description=description)) | 155 repo_description=description)) |
153 self.checkSessionFlash(response, | 156 self.checkSessionFlash(response, |
154 'Created repository <a href="/%s">%s</a>' | 157 'Created repository <a href="/%s">%s</a>' |
179 repo_name_unicode = repo_name.decode('utf8') | 182 repo_name_unicode = repo_name.decode('utf8') |
180 description = 'description for newly created repo' + non_ascii | 183 description = 'description for newly created repo' + non_ascii |
181 description_unicode = description.decode('utf8') | 184 description_unicode = description.decode('utf8') |
182 private = False | 185 private = False |
183 response = self.app.post(url('repos'), | 186 response = self.app.post(url('repos'), |
184 _get_repo_create_params(repo_private=False, | 187 fixture._get_repo_create_params(repo_private=False, |
185 repo_type='git', | 188 repo_type='git', |
186 repo_name=repo_name, | 189 repo_name=repo_name, |
187 repo_description=description)) | 190 repo_description=description)) |
188 | 191 |
189 self.checkSessionFlash(response, | 192 self.checkSessionFlash(response, |
218 def test_delete_hg(self): | 221 def test_delete_hg(self): |
219 self.log_user() | 222 self.log_user() |
220 repo_name = 'vcs_test_new_to_delete' | 223 repo_name = 'vcs_test_new_to_delete' |
221 description = 'description for newly created repo' | 224 description = 'description for newly created repo' |
222 response = self.app.post(url('repos'), | 225 response = self.app.post(url('repos'), |
223 _get_repo_create_params(repo_private=False, | 226 fixture._get_repo_create_params(repo_private=False, |
224 repo_type='hg', | 227 repo_type='hg', |
225 repo_name=repo_name, | 228 repo_name=repo_name, |
226 repo_description=description)) | 229 repo_description=description)) |
227 | 230 |
228 self.checkSessionFlash(response, | 231 self.checkSessionFlash(response, |
265 self.log_user() | 268 self.log_user() |
266 repo_name = 'vcs_test_new_to_delete' | 269 repo_name = 'vcs_test_new_to_delete' |
267 description = 'description for newly created repo' | 270 description = 'description for newly created repo' |
268 private = False | 271 private = False |
269 response = self.app.post(url('repos'), | 272 response = self.app.post(url('repos'), |
270 _get_repo_create_params(repo_private=False, | 273 fixture._get_repo_create_params(repo_private=False, |
271 repo_type='git', | 274 repo_type='git', |
272 repo_name=repo_name, | 275 repo_name=repo_name, |
273 repo_description=description)) | 276 repo_description=description)) |
274 | 277 |
275 self.checkSessionFlash(response, | 278 self.checkSessionFlash(response, |
335 self.assertTrue(len(perm), 1) | 338 self.assertTrue(len(perm), 1) |
336 self.assertEqual(perm[0].permission.permission_name, 'repository.read') | 339 self.assertEqual(perm[0].permission.permission_name, 'repository.read') |
337 self.assertEqual(Repository.get_by_repo_name(HG_REPO).private, False) | 340 self.assertEqual(Repository.get_by_repo_name(HG_REPO).private, False) |
338 | 341 |
339 response = self.app.put(url('repo', repo_name=HG_REPO), | 342 response = self.app.put(url('repo', repo_name=HG_REPO), |
340 _get_repo_create_params(repo_private=1, | 343 fixture._get_repo_create_params(repo_private=1, |
341 repo_name=HG_REPO, | 344 repo_name=HG_REPO, |
342 user=TEST_USER_ADMIN_LOGIN)) | 345 user=TEST_USER_ADMIN_LOGIN)) |
343 self.checkSessionFlash(response, | 346 self.checkSessionFlash(response, |
344 msg='Repository %s updated successfully' % (HG_REPO)) | 347 msg='Repository %s updated successfully' % (HG_REPO)) |
345 self.assertEqual(Repository.get_by_repo_name(HG_REPO).private, True) | 348 self.assertEqual(Repository.get_by_repo_name(HG_REPO).private, True) |
348 perm = _get_permission_for_user(user='default', repo=HG_REPO) | 351 perm = _get_permission_for_user(user='default', repo=HG_REPO) |
349 self.assertTrue(len(perm), 1) | 352 self.assertTrue(len(perm), 1) |
350 self.assertEqual(perm[0].permission.permission_name, 'repository.none') | 353 self.assertEqual(perm[0].permission.permission_name, 'repository.none') |
351 | 354 |
352 response = self.app.put(url('repo', repo_name=HG_REPO), | 355 response = self.app.put(url('repo', repo_name=HG_REPO), |
353 _get_repo_create_params(repo_private=False, | 356 fixture._get_repo_create_params(repo_private=False, |
354 repo_name=HG_REPO, | 357 repo_name=HG_REPO, |
355 user=TEST_USER_ADMIN_LOGIN)) | 358 user=TEST_USER_ADMIN_LOGIN)) |
356 self.checkSessionFlash(response, | 359 self.checkSessionFlash(response, |
357 msg='Repository %s updated successfully' % (HG_REPO)) | 360 msg='Repository %s updated successfully' % (HG_REPO)) |
358 self.assertEqual(Repository.get_by_repo_name(HG_REPO).private, False) | 361 self.assertEqual(Repository.get_by_repo_name(HG_REPO).private, False) |