tests: adds detach/delete fork tets

This commit is contained in:
ievgenii vdovenko 2025-08-01 12:24:30 +02:00
parent 25d31cd588
commit bf64faedba

View file

@ -42,14 +42,34 @@ class TestRepoModel(object):
assert Repository.get_by_repo_name(repo_name=backend.repo_name) is None
assert repo.repo_name not in repos
def test_remove_repo_raises_exc_when_attached_forks(self, backend):
def test_remove_repo_forks_are_detached(self, backend):
repo = backend.create_repo()
Session().commit()
backend.create_fork()
fork = backend.create_fork()
fork_name = fork.repo_name
Session().commit()
with pytest.raises(AttachedForksError):
RepoModel().delete(repo=repo)
assert fork.parent is not None
RepoModel().delete(repo=repo)
fork = Repository.get_by_repo_name(repo_name=fork_name)
assert fork.parent is None
def test_remove_repo_forks_are_deleted(self, backend):
repo = backend.create_repo()
repo.private = True
Session().commit()
fork = backend.create_fork()
fork_name = fork.repo_name
Session().commit()
assert fork.parent is not None
RepoModel().delete(repo=repo)
fork = Repository.get_by_repo_name(repo_name=fork_name)
assert fork is None
def test_remove_repo_delete_forks(self, backend):
repo = backend.create_repo()