# Licensed under the GPL: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html # For details: https://github.com/pylint-dev/pylint/blob/main/LICENSE # Copyright (c) https://github.com/pylint-dev/pylint/blob/main/CONTRIBUTORS.txt from __future__ import annotations import pytest from pylint.__pkginfo__ import get_numversion_from_version @pytest.mark.parametrize( "version,expected_numversion", [ ["2.8.1", (2, 8, 1)], ["2.8.2+", (2, 8, 2)], ["3.0.0a0", (3, 0, 0)], ["3..0", (3, 0, 0)], ["1.a", (1, 0, 0)], ["", (0, 0, 0)], ["3.0.0b1", (3, 0, 0)], ["3.0.0rc1", (3, 0, 0)], ["3.0.0dev-234324234234f23abc4", (3, 0, 0)], ["pylint-2.4.7", (2, 4, 7)], ["2.8.3.dev3+g28c093c2.d20210428", (2, 8, 3)], ], ) def test_numversion(version: str, expected_numversion: tuple[int, int, int]) -> None: assert get_numversion_from_version(version) == expected_numversion