blob: 9391e668dd22f7cc14d615aae3e9e5d9ebf9b7b9 (
plain)
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
|
# SPDX-FileCopyrightText: Peter Pentchev <roam@ringlet.net>
# SPDX-License-Identifier: BSD-2-Clause
"""Make sure the test data is up to date."""
import pathlib
from typing import Set
def test_test_data() -> None:
"""Compare the test data to the one in the source t/ directory."""
def get_files(path: pathlib.Path) -> Set[pathlib.Path]:
"""Get the relevant files from the test data directory."""
tdefs = path / "defs/tests"
files_ini = set(path.glob("*.ini"))
files_tests = set(tdefs.glob("*.json"))
assert files_ini
assert files_tests
files = files_ini | files_tests
assert (path.is_file() for path in files)
return files
local = pathlib.Path(__file__).parent.parent / "test_data"
local_tests = get_files(local)
upstream = pathlib.Path(__file__).parent.parent.parent / "t"
if not upstream.is_dir():
return
upstream_tests = get_files(upstream)
for test in sorted(upstream_tests):
local_test = local / test.relative_to(upstream)
assert local_test.is_file()
assert local_test.read_text(encoding="UTF-8") == test.read_text(encoding="UTF-8")
for test in sorted(local_tests):
upstream_test = upstream / test.relative_to(local)
assert upstream_test.is_file()
|