Coverage for jsonurl_main_test.py: 100%
28 statements
« prev ^ index » next coverage.py v7.6.8, created at 2024-12-06 11:15 +0000
« prev ^ index » next coverage.py v7.6.8, created at 2024-12-06 11:15 +0000
1import subprocess
2import sys
5def run(
6 argv,
7 text=True,
8 check=True,
9 capture_output=True,
10 **kw,
11) -> subprocess.CompletedProcess:
12 return subprocess.run(
13 [sys.executable, "-m", "jsonurl_py"] + argv,
14 text=text,
15 check=check,
16 capture_output=True,
17 **kw,
18 )
21def test_main_load():
22 proc = run(["load"], input="(a:1)")
23 assert proc.stdout == '{"a": 1}\n'
26def test_main_load_list():
27 proc = run(["load", "--implied-list"], input="a,1")
28 assert proc.stdout == '["a", 1]\n'
31def test_main_load_dict():
32 proc = run(["load", "--implied-dict"], input="a:b")
33 assert proc.stdout == '{"a": "b"}\n'
36def test_main_load_aqf():
37 proc = run(["load", "-a"], input="(a,!1,!true)")
38 assert proc.stdout == '["a", "1", "true"]\n'
41def test_main_dump():
42 proc = run(["dump"], input='{"a":1}')
43 assert proc.stdout == "(a:1)\n"
46def test_main_dump_list():
47 proc = run(["dump", "--implied-list"], input='["a", 1]')
48 assert proc.stdout == "a,1\n"
51def test_main_dump_dict():
52 proc = run(["dump", "--implied-dict"], input='{"a":"b"}')
53 assert proc.stdout == "a:b\n"
56def test_main_dump_aqf():
57 proc = run(["dump", "-a"], input='["a", "1", "true"]')
58 assert proc.stdout == "(a,!1,!true)\n"