feat: Add update checker tooling

Add the initial dataset, version checker, tests, and project setup files so the update checker can be run and validated.
This commit is contained in:
Jeena 2026-03-12 12:49:28 +00:00
parent 1eddaca1ad
commit 95cd8e0906
10 changed files with 692 additions and 20 deletions

24
tests/test_extraction.py Normal file
View file

@ -0,0 +1,24 @@
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"