-
-
Notifications
You must be signed in to change notification settings - Fork 276
/
Copy pathtest_mvn_provider.py
50 lines (39 loc) · 1.33 KB
/
test_mvn_provider.py
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
from __future__ import annotations
import pytest
import os
from commitizen.config.base_config import BaseConfig
from commitizen.providers.mvn_provider import MavenProvider
def test_can_run_subcommand(config: BaseConfig):
provider = MavenProvider(config)
got = provider._MavenProvider__run_cmd("echo 'hi'") # type: ignore
expected = "hi"
assert got == expected
@pytest.mark.parametrize(
"file, expected",
(
("./tests/data/sample_pom.xml", "3.2.1"),
("./tests/data/sample_pom_snapshot.xml", "3.2.1-SNAPSHOT"),
),
)
def test_get_version(config: BaseConfig, file: str, expected: str):
provider = MavenProvider(config)
got = provider.get_version(file)
assert got == expected
def test_set_version(config: BaseConfig):
provider = MavenProvider(config)
file = "./tests/data/sample_pom.xml"
expected = "3.2.2"
provider.set_version(expected, file)
got = provider.get_version(file)
assert got == expected
# rollback changes
expected = "3.2.1"
provider.set_version(expected, file)
got = provider.get_version(file)
assert got == expected
# delete backup file created
backup_file = file + ".versionsBackup"
assert os.path.exists(backup_file)
if os.path.exists(backup_file):
os.remove(backup_file)
assert not os.path.exists(backup_file)