FreedomBox/plinth/tests/test_version.py
James Valleroy 4920e33160
version: Compare Debian package version numbers
Provides a Version class wrapper around apt_pkg.version_compare.

Replaces distutils.version which is deprecated.

Closes: #2261.

Tests:

- Install ejabberd.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
[sunil: Add two more version comparison tests]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2022-09-08 21:38:58 -07:00

46 lines
1.7 KiB
Python

# SPDX-License-Identifier: AGPL-3.0-or-later
"""
Tests for Version class.
"""
from plinth.version import Version
def test_version_comparisons():
"""Test comparing Debian package version numbers."""
assert Version('3.1.8-1') == Version('3.1.8-1')
assert Version('3.1.8-1') <= Version('4~')
assert Version('3.1.8-1') < Version('4~')
assert Version('4.0.0-1') >= Version('4~')
assert Version('4.0') >= Version('4~')
assert Version('4.0.0-1') > Version('4~')
assert Version('4.0') > Version('4~')
def test_backport_versions():
"""Test comparing Debian backports package version numbers."""
assert Version('3.1.7-1~bpo11+1') == Version('3.1.7-1~bpo11+1')
assert Version('3.1.7-1~bpo11+1') <= Version('4~')
assert Version('3.1.7-1~bpo11+1') < Version('4~')
assert Version('4.0.0-1~bpo11+1') >= Version('4~')
assert Version('4.0.0-1~bpo11+1') > Version('4~')
def test_dfsg_versions():
"""Test comparing Debian DFSG package version numbers."""
assert Version('1.3.0+dfsg-2.2') == Version('1.3.0+dfsg-2.2')
assert Version('1.3.0+dfsg-2.2') <= Version('1.4~')
assert Version('1.3.0+dfsg-2.2') < Version('1.4~')
assert Version('1.4.0+dfsg-1.1') >= Version('1.4~')
assert Version('1.4.0+dfsg-1.1') > Version('1.4~')
def test_git_versions():
"""Test comparing Debian git package version numbers."""
assert Version('21~git20210204.b4cbc79+dfsg-1') == \
Version('21~git20210204.b4cbc79+dfsg-1')
assert Version('21~git20210204.b4cbc79+dfsg-1') <= Version('22~')
assert Version('21~git20210204.b4cbc79+dfsg-1') < Version('22~')
assert Version('22~git20210204.b4cbc79+dfsg-1') >= Version('22~')
assert Version('22~git20210204.b4cbc79+dfsg-1') > Version('22~')