Add the initial dataset, version checker, tests, and project setup files so the update checker can be run and validated.
24 lines
695 B
Python
24 lines
695 B
Python
import json
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
sys.path.append(str(Path(__file__).resolve().parents[1]))
|
|
|
|
from check_updates import ExtractRule, extract_version
|
|
|
|
|
|
def test_extract_jsonpath():
|
|
body = json.dumps({"version": "1.2.3"})
|
|
rule = ExtractRule(type="jsonpath", value="$.version")
|
|
assert extract_version(body, rule) == "1.2.3"
|
|
|
|
|
|
def test_extract_header():
|
|
rule = ExtractRule(type="header", value="x-version")
|
|
headers = {"x-version": "2.3.4"}
|
|
assert extract_version("", rule, headers) == "2.3.4"
|
|
|
|
|
|
def test_extract_regex_group():
|
|
rule = ExtractRule(type="regex", value=r"Version: (\d+\.\d+\.\d+)")
|
|
assert extract_version("Version: 1.9.0", rule) == "1.9.0"
|