Coverage for jsonurl_main_test.py: 100%

28 statements  

« prev     ^ index     » next       coverage.py v6.5.0, created at 2022-11-20 21:12 +0000

1import subprocess 

2import sys 

3 

4 

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 ) 

19 

20 

21def test_main_load(): 

22 proc = run(["load"], input="(a:1)") 

23 assert proc.stdout == '{"a": 1}\n' 

24 

25 

26def test_main_load_list(): 

27 proc = run(["load", "--implied-list"], input="a,1") 

28 assert proc.stdout == '["a", 1]\n' 

29 

30 

31def test_main_load_dict(): 

32 proc = run(["load", "--implied-dict"], input="a:b") 

33 assert proc.stdout == '{"a": "b"}\n' 

34 

35 

36def test_main_load_aqf(): 

37 proc = run(["load", "-a"], input="(a,!1,!true)") 

38 assert proc.stdout == '["a", "1", "true"]\n' 

39 

40 

41def test_main_dump(): 

42 proc = run(["dump"], input='{"a":1}') 

43 assert proc.stdout == "(a:1)\n" 

44 

45 

46def test_main_dump_list(): 

47 proc = run(["dump", "--implied-list"], input='["a", 1]') 

48 assert proc.stdout == "a,1\n" 

49 

50 

51def test_main_dump_dict(): 

52 proc = run(["dump", "--implied-dict"], input='{"a":"b"}') 

53 assert proc.stdout == "a:b\n" 

54 

55 

56def test_main_dump_aqf(): 

57 proc = run(["dump", "-a"], input='["a", "1", "true"]') 

58 assert proc.stdout == "(a,!1,!true)\n"