Skip to content

Commit

Permalink
Tests: add tests for vcs.git.backend (#9491)
Browse files Browse the repository at this point in the history
  • Loading branch information
indrajithi committed Jun 17, 2024
1 parent c90d118 commit d707e4d
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions tests/vcs/git/test_backend.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
from __future__ import annotations

from unittest.mock import MagicMock

import pytest

from dulwich.repo import Repo

from poetry.vcs.git.backend import Git
from poetry.vcs.git.backend import annotated_tag
from poetry.vcs.git.backend import is_revision_sha
from poetry.vcs.git.backend import urlpathjoin


VALID_SHA = "c5c7624ef64f34d9f50c3b7e8118f7f652fddbbd"
Expand Down Expand Up @@ -41,3 +47,31 @@ def test_invalid_revision_sha_max_len() -> None:
def test_get_name_from_source_url(url: str) -> None:
name = Git.get_name_from_source_url(url)
assert name == "poetry"


@pytest.mark.parametrize(("tag"), ["my-tag", b"my-tag"])
def test_annotated_tag(tag: str | bytes) -> None:
tag = annotated_tag("my-tag")
assert tag == b"my-tag^{}"


def test_get_remote_url() -> None:
repo = MagicMock(spec=Repo)
repo.get_config.return_value.get.return_value = (
b"https://github.com/python-poetry/poetry.git"
)

assert Git.get_remote_url(repo) == "https://github.com/python-poetry/poetry.git"


@pytest.mark.parametrize(
"url, expected_result",
[
("ssh:https://[email protected]/org/repo", "ssh:https://[email protected]/other-repo"),
("ssh:https://[email protected]/org/repo/", "ssh:https://[email protected]/org/other-repo"),
],
)
def test_urlpathjoin(url: str, expected_result: str) -> None:
path = "../other-repo"
result = urlpathjoin(url, path)
assert result == expected_result

0 comments on commit d707e4d

Please sign in to comment.