Skip to content

Commit

Permalink
Merge pull request #64 from TG1999/nuget/fix/str_repr
Browse files Browse the repository at this point in the history
Fix nuget string representation
  • Loading branch information
TG1999 authored May 2, 2022
2 parents 033e23f + c92fe44 commit e801ec4
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 2 deletions.
3 changes: 3 additions & 0 deletions src/univers/versions.py
Original file line number Diff line number Diff line change
Expand Up @@ -305,6 +305,9 @@ def is_valid(cls, string):
except ValueError:
return False

def __str__(self):
return str(self.string)

def __lt__(self, other):
return nuget.Version.from_string(self.string) < nuget.Version.from_string(other.string)

Expand Down
4 changes: 2 additions & 2 deletions tests/test_nuget.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
# https://github.com/NuGet/NuGet.Client/blob/dev/test/NuGet.Core.Tests/NuGet.Versioning.Test/VersionComparerTests.cs

import unittest
from univers import nuget
from univers.versions import NugetVersion


class NuGetTest(unittest.TestCase):
Expand All @@ -29,7 +29,7 @@ def setUp(self):

def check_order(self, comparison, first, second):
"""Check order."""
comparison(nuget.Version.from_string(first), nuget.Version.from_string(second))
comparison(NugetVersion.build_value(first), NugetVersion.build_value(second))

def test_equals(self):
"""Test version equals."""
Expand Down
14 changes: 14 additions & 0 deletions tests/test_version_range.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,15 @@

from univers.version_constraint import VersionConstraint
from univers.version_range import GemVersionRange
from univers.version_range import NugetVersionRange
from univers.version_range import InvalidVersionRange
from univers.version_range import PypiVersionRange
from univers.version_range import VersionRange
from univers.version_range import RANGE_CLASS_BY_SCHEMES
from univers.version_range import NpmVersionRange
from univers.version_range import OpensslVersionRange
from univers.versions import PypiVersion
from univers.versions import NugetVersion
from univers.versions import RubygemsVersion
from univers.versions import SemverVersion
from univers.versions import OpensslVersion
Expand Down Expand Up @@ -262,6 +264,18 @@ def test_OpensslVersionRange_from_versions(self):
version_range = OpensslVersionRange.from_versions(sequence)
assert version_range == expected

def test_nuget_version_range(self):
nuget_range = "[1.0.0, 2.0.0)"
expected = NugetVersionRange(
constraints=(
VersionConstraint(comparator=">=", version=NugetVersion(string="1.0.0")),
VersionConstraint(comparator="<", version=NugetVersion(string="2.0.0")),
)
)
version_range = NugetVersionRange.from_native(nuget_range)
assert version_range == expected
assert version_range.to_string() == "vers:nuget/>=1.0.0|<2.0.0"


VERSION_RANGE_TESTS_BY_SCHEME = {
"nginx": ["0.8.40+", "0.7.52-0.8.39", "0.9.10", "1.5.0+, 1.4.1+"],
Expand Down

0 comments on commit e801ec4

Please sign in to comment.