Skip to content

Commit

Permalink
Remove: Remove unused version helper functions
Browse files Browse the repository at this point in the history
  • Loading branch information
bjoernricks authored and y0urself committed Mar 14, 2023
1 parent 0f2d853 commit c305be0
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 126 deletions.
53 changes: 1 addition & 52 deletions pontos/version/helper.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,62 +17,11 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#

import re
from typing import Optional

from packaging.version import InvalidVersion

from pontos.git import Git, TagSort
from pontos.version.version import Version, parse_version


def strip_version(version: str) -> str:
"""
Strips a leading 'v' from a version string
E.g. v1.2.3 will be converted to 1.2.3
"""
if version and version[0] == "v":
return version[1:]

return version


def check_develop(version: str) -> bool:
"""
Checks if the given Version is a develop version
Returns True if yes, False if not
"""
return True if Version(version).dev is not None else False


def is_version_pep440_compliant(version: str) -> bool:
"""
Checks if the provided version is a
`PEP 440 <https://www.python.org/dev/peps/pep-0440>`_ compliant version
string
"""
return version == safe_version(version)


def safe_version(version: str) -> str:
"""
Returns the version as a string in
`PEP 440 <https://www.python.org/dev/peps/pep-0440>`_ compliant format.
"""
try:
return str(Version(version))
except InvalidVersion:
version = version.replace(" ", ".")
return re.sub("[^A-Za-z0-9.]+", "-", version)


def versions_equal(new_version: str, old_version: str) -> bool:
"""
Checks if new_version and old_version are equal
"""
return safe_version(old_version) == safe_version(new_version)
from .version import Version, parse_version


def get_last_release_version(
Expand Down
75 changes: 1 addition & 74 deletions tests/version/test_helper.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,83 +19,10 @@
from unittest.mock import patch

from pontos.git.git import Git
from pontos.version.helper import (
get_last_release_version,
is_version_pep440_compliant,
safe_version,
strip_version,
)
from pontos.version.helper import get_last_release_version
from pontos.version.version import Version


class IsVersionPep440CompliantTestCase(unittest.TestCase):
def test_is_compliant(self):
self.assertTrue(is_version_pep440_compliant("1.2.3.dev1"))
self.assertTrue(is_version_pep440_compliant("1.2.3.dev0"))
self.assertTrue(is_version_pep440_compliant("20.4"))
self.assertTrue(is_version_pep440_compliant("1.2"))
self.assertTrue(is_version_pep440_compliant("1.2.0a0"))
self.assertTrue(is_version_pep440_compliant("1.2.0a1"))
self.assertTrue(is_version_pep440_compliant("1.2.0b0"))
self.assertTrue(is_version_pep440_compliant("1.2.0b1"))

def test_is_not_compliant(self):
self.assertFalse(is_version_pep440_compliant("1.2.3dev1"))
self.assertFalse(is_version_pep440_compliant("1.2.3dev"))
self.assertFalse(is_version_pep440_compliant("1.2.3dev0"))
self.assertFalse(is_version_pep440_compliant("1.2.3alpha"))
self.assertFalse(is_version_pep440_compliant("1.2.3alpha0"))
self.assertFalse(is_version_pep440_compliant("1.2.3.a0"))
self.assertFalse(is_version_pep440_compliant("1.2.3beta"))
self.assertFalse(is_version_pep440_compliant("1.2.3beta0"))
self.assertFalse(is_version_pep440_compliant("1.2.3.b0"))
self.assertFalse(is_version_pep440_compliant("20.04"))


class SafeVersionTestCase(unittest.TestCase):
def test_dev_versions(self):
self.assertEqual(safe_version("1.2.3dev"), "1.2.3.dev0")
self.assertEqual(safe_version("1.2.3dev1"), "1.2.3.dev1")
self.assertEqual(safe_version("1.2.3.dev"), "1.2.3.dev0")

def test_alpha_versions(self):
self.assertEqual(safe_version("1.2.3alpha"), "1.2.3a0")
self.assertEqual(safe_version("1.2.3.alpha"), "1.2.3a0")
self.assertEqual(safe_version("1.2.3a"), "1.2.3a0")
self.assertEqual(safe_version("1.2.3.a1"), "1.2.3a1")
self.assertEqual(safe_version("1.2.3a1"), "1.2.3a1")

def test_beta_versions(self):
self.assertEqual(safe_version("1.2.3beta"), "1.2.3b0")
self.assertEqual(safe_version("1.2.3.beta"), "1.2.3b0")
self.assertEqual(safe_version("1.2.3b"), "1.2.3b0")
self.assertEqual(safe_version("1.2.3.b1"), "1.2.3b1")
self.assertEqual(safe_version("1.2.3b1"), "1.2.3b1")

def test_caldav_versions(self):
self.assertEqual(safe_version("22.04"), "22.4")
self.assertEqual(safe_version("22.4"), "22.4")
self.assertEqual(safe_version("22.10"), "22.10")
self.assertEqual(safe_version("22.04dev1"), "22.4.dev1")
self.assertEqual(safe_version("22.10dev1"), "22.10.dev1")

def test_release_versions(self):
self.assertEqual(safe_version("1"), "1")
self.assertEqual(safe_version("1.2"), "1.2")
self.assertEqual(safe_version("1.2.3"), "1.2.3")
self.assertEqual(safe_version("22.4"), "22.4")


class StripVersionTestCase(unittest.TestCase):
def test_version_string_without_v(self):
self.assertEqual(strip_version("1.2.3"), "1.2.3")
self.assertEqual(strip_version("1.2.3dev"), "1.2.3dev")

def test_version_string_with_v(self):
self.assertEqual(strip_version("v1.2.3"), "1.2.3")
self.assertEqual(strip_version("v1.2.3dev"), "1.2.3dev")


class GetLastReleaseVersionTestCase(unittest.TestCase):
@patch("pontos.version.helper.Git", spec=Git)
def test_get_last_release_version(self, _git_interface_mock):
Expand Down

0 comments on commit c305be0

Please sign in to comment.