20 lines
639 B
Python
20 lines
639 B
Python
import importlib.util
|
|
import json
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
HERE = Path(__file__).resolve().parent
|
|
FIXTURE = HERE.parent.parent / "src/lib/site-map/__fixtures__/mini-model"
|
|
spec = importlib.util.spec_from_file_location("model_keys", HERE / "model_keys.py")
|
|
model_keys = importlib.util.module_from_spec(spec)
|
|
spec.loader.exec_module(model_keys)
|
|
|
|
|
|
class ModelKeysTests(unittest.TestCase):
|
|
def test_same_keys_as_typescript(self):
|
|
expected = json.loads((FIXTURE / "expected-keys.json").read_text())
|
|
self.assertEqual(model_keys.model_keys(FIXTURE), expected)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|