Show More
@@ -230,7 +230,8 b' class SimpleVCS(object):' | |||
|
230 | 230 | repo_name, db_repo.repo_type, scm_type) |
|
231 | 231 | return False |
|
232 | 232 | |
|
233 |
return is_valid_repo(repo_name, base_path, |
|
|
233 | return is_valid_repo(repo_name, base_path, | |
|
234 | explicit_scm=scm_type, expect_scm=scm_type) | |
|
234 | 235 | |
|
235 | 236 | def valid_and_active_user(self, user): |
|
236 | 237 | """ |
@@ -260,7 +260,7 b' def is_valid_repo(repo_name, base_path, ' | |||
|
260 | 260 | |
|
261 | 261 | try: |
|
262 | 262 | if explicit_scm: |
|
263 | detected_scms = [get_scm_backend(explicit_scm)] | |
|
263 | detected_scms = [get_scm_backend(explicit_scm)(full_path).alias] | |
|
264 | 264 | else: |
|
265 | 265 | detected_scms = get_scm(full_path) |
|
266 | 266 |
@@ -39,6 +39,7 b' from rhodecode.lib.vcs.nodes import File' | |||
|
39 | 39 | from rhodecode.model.auth_token import AuthTokenModel |
|
40 | 40 | from rhodecode.model.db import Repository, UserIpMap, CacheKey |
|
41 | 41 | from rhodecode.model.meta import Session |
|
42 | from rhodecode.model.repo import RepoModel | |
|
42 | 43 | from rhodecode.model.user import UserModel |
|
43 | 44 | from rhodecode.tests import (GIT_REPO, HG_REPO, TEST_USER_ADMIN_LOGIN) |
|
44 | 45 | |
@@ -177,6 +178,28 b' class TestVCSOperations(object):' | |||
|
177 | 178 | 'git clone', clone_url, tmpdir.strpath) |
|
178 | 179 | assert 'not found' in stderr |
|
179 | 180 | |
|
181 | def test_clone_non_existing_store_path_hg(self, rc_web_server, tmpdir, user_util): | |
|
182 | repo = user_util.create_repo() | |
|
183 | clone_url = rc_web_server.repo_clone_url(repo.repo_name) | |
|
184 | ||
|
185 | # Damage repo by removing it's folder | |
|
186 | RepoModel()._delete_filesystem_repo(repo) | |
|
187 | ||
|
188 | stdout, stderr = Command('/tmp').execute( | |
|
189 | 'hg clone', clone_url, tmpdir.strpath) | |
|
190 | assert 'HTTP Error 404: Not Found' in stderr | |
|
191 | ||
|
192 | def test_clone_non_existing_store_path_git(self, rc_web_server, tmpdir, user_util): | |
|
193 | repo = user_util.create_repo(repo_type='git') | |
|
194 | clone_url = rc_web_server.repo_clone_url(repo.repo_name) | |
|
195 | ||
|
196 | # Damage repo by removing it's folder | |
|
197 | RepoModel()._delete_filesystem_repo(repo) | |
|
198 | ||
|
199 | stdout, stderr = Command('/tmp').execute( | |
|
200 | 'git clone', clone_url, tmpdir.strpath) | |
|
201 | assert 'not found' in stderr | |
|
202 | ||
|
180 | 203 | def test_push_new_file_hg(self, rc_web_server, tmpdir): |
|
181 | 204 | clone_url = rc_web_server.repo_clone_url(HG_REPO) |
|
182 | 205 | stdout, stderr = Command('/tmp').execute( |
General Comments 0
You need to be logged in to leave comments.
Login now