44import pytest
55import subprocess
66
7- def test_invalid_json ():
8- # Run the Wokwi CLI
7+ def run_wokwi_cli (binary , timeout , scenario , diagram ):
98 result = subprocess .run (
109 [
1110 "wokwi-cli" ,
1211 "--elf" ,
13- f"bin/offline/firmware.elf" ,
12+ binary ,
1413 "--timeout" ,
15- "120000" ,
14+ timeout ,
1615 "--scenario" ,
17- f"scenarios/offline/test-invalid-json. scenario.yaml" ,
16+ scenario ,
1817 "--diagram-file" ,
19- f"diagrams/offline.json" ,
18+ diagram ,
2019 ]
2120 )
21+ return result
22+
23+ def test_invalid_json ():
24+ result = run_wokwi_cli (f"bin/offline/firmware.elf" , "120000" , f"scenarios/offline/test-invalid-json.scenario.yaml" , f"diagrams/offline.json" )
2225 assert result .returncode == 0
2326
2427
2528def test_analog_input ():
26- # Run the Wokwi CLI
27- result = subprocess .run (
28- [
29- "wokwi-cli" ,
30- "--elf" ,
31- f"bin/offline/firmware.elf" ,
32- "--timeout" ,
33- "120000" ,
34- "--scenario" ,
35- f"scenarios/offline/test-log-analogin.scenario.yaml" ,
36- "--diagram-file" ,
37- f"diagrams/offline.json" ,
38- ]
39- )
29+ result = run_wokwi_cli (f"bin/offline/firmware.elf" , "120000" , f"scenarios/offline/test-log-analogin.scenario.yaml" , f"diagrams/offline.json" )
4030 assert result .returncode == 0
4131
4232
4333def test_digital_input ():
44- # Run the Wokwi CLI
45- result = subprocess .run (
46- [
47- "wokwi-cli" ,
48- "--elf" ,
49- f"bin/offline/firmware.elf" ,
50- "--timeout" ,
51- "120000" ,
52- "--scenario" ,
53- f"scenarios/offline/test-log-digital-in.scenario.yaml" ,
54- "--diagram-file" ,
55- f"diagrams/offline.json" ,
56- ]
57- )
34+ result = run_wokwi_cli (f"bin/offline/firmware.elf" , "120000" , f"scenarios/offline/test-log-digital-in.scenario.yaml" , f"diagrams/offline.json" )
5835 assert result .returncode == 0
5936
6037def test_ds18b20 ():
61- # Run the Wokwi CLI
62- result = subprocess .run (
63- [
64- "wokwi-cli" ,
65- "--elf" ,
66- f"bin/offline/firmware.elf" ,
67- "--timeout" ,
68- "120000" ,
69- "--scenario" ,
70- f"scenarios/offline/test-log-ds18b20.scenario.yaml" ,
71- "--diagram-file" ,
72- f"diagrams/offline.json" ,
73- ]
74- )
38+ result = run_wokwi_cli (f"bin/offline/firmware.elf" , "120000" , f"scenarios/offline/test-log-ds18b20.scenario.yaml" , f"diagrams/offline.json" )
7539 assert result .returncode == 0
0 commit comments