File: test_substitute.py

package info (click to toggle)
python-nvchecker 2.16-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 736 kB
  • sloc: python: 4,801; makefile: 25
file content (52 lines) | stat: -rw-r--r-- 1,513 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# MIT licensed
# Copyright (c) 2013-2020 lilydjwg <lilydjwg@gmail.com>, et al.

import pytest
pytestmark = pytest.mark.asyncio

async def test_substitute_prefix(get_version):
    assert await get_version("example", {
        "source": "manual",
        "manual": "v1.0",
        "prefix": "v",
    }) == "1.0"

async def test_substitute_prefix_missing_ok(get_version):
    assert await get_version("example", {
        "source": "manual",
        "manual": "1.0",
        "prefix": "v",
    }) == "1.0"

async def test_substitute_regex(get_version):
    assert await get_version("example", {
        "source": "manual",
        "manual": "r15c",
        "from_pattern": r"r(\d+)([a-z])",
        "to_pattern": r"r\1.\2",
    }) == "r15.c"

async def test_substitute_regex_missing_ok(get_version):
    assert await get_version("example", {
        "source": "manual",
        "manual": "r15",
        "from_pattern": r"r(\d+)([a-z])",
        "to_pattern": r"r\1.\2",
    }) == "r15"

async def test_substitute_regex_empty_to_pattern(get_version):
    assert await get_version("example", {
        "source": "manual",
        "manual": "15-debian",
        "from_pattern": r"-\w+$",
        "to_pattern": r"",
    }) == "15"

async def test_substitute_prefix_has_higher_priority(get_version):
    assert await get_version("example", {
        "source": "manual",
        "manual": "Version 1.2 Beta 3",
        "prefix": "Version ",
        "from_pattern": r" Beta ",
        "to_pattern": r"b",
    }) == "1.2b3"