From 7965efd5d91111cf469b9da889619818c53a00f4 Mon Sep 17 00:00:00 2001 From: Marian Beermann Date: Tue, 27 Jun 2017 10:11:57 +0200 Subject: [PATCH] version: add missing test for format_version, fix bug --- src/borg/testsuite/version.py | 17 ++++++++++++++++- src/borg/version.py | 2 +- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/borg/testsuite/version.py b/src/borg/testsuite/version.py index b5f32e6e9..d17dee0e7 100644 --- a/src/borg/testsuite/version.py +++ b/src/borg/testsuite/version.py @@ -1,6 +1,6 @@ import pytest -from ..version import parse_version +from ..version import parse_version, format_version @pytest.mark.parametrize("version_str, version_tuple", [ @@ -36,3 +36,18 @@ def test_parse_version_invalid(): assert parse_version('1.2') # we require x.y.z versions with pytest.raises(ValueError): assert parse_version('crap') + + +@pytest.mark.parametrize("version_str, version_tuple", [ + ('1.0.0a1', (1, 0, 0, -4, 1)), + ('1.0.0', (1, 0, 0, -1)), + ('1.0.0a2', (1, 0, 0, -4, 2)), + ('1.0.0b3', (1, 0, 0, -3, 3)), + ('1.0.0rc4', (1, 0, 0, -2, 4)), + ('0.0.0', (0, 0, 0, -1)), + ('0.0.11', (0, 0, 11, -1)), + ('0.11.0', (0, 11, 0, -1)), + ('11.0.0', (11, 0, 0, -1)), +]) +def test_format_version(version_str, version_tuple): + assert format_version(version_tuple) == version_str diff --git a/src/borg/version.py b/src/borg/version.py index 7e2e95b78..a7a997f7b 100644 --- a/src/borg/version.py +++ b/src/borg/version.py @@ -40,7 +40,7 @@ def format_version(version): while True: part = next(it) if part >= 0: - f += str(part) + f.append(str(part)) elif part == -1: break else: