Skip to content

Commit cec28b1

Browse files
committed
Pass tests
1 parent 8e7385c commit cec28b1

File tree

7 files changed

+27
-24
lines changed

7 files changed

+27
-24
lines changed

src/provisioning/sdcard/ws_sdcard.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -900,7 +900,7 @@ const char *SensorTypeToSIUnit(wippersnapper_sensor_SensorType sensorType) {
900900
case wippersnapper_sensor_SensorType_SENSOR_TYPE_BYTES:
901901
return "bytes";
902902
case wippersnapper_sensor_SensorType_SENSOR_TYPE_BOOLEAN:
903-
return "none";
903+
return "boolean";
904904
default:
905905
return "UNKNOWN";
906906
}

tests/bin/offline/firmware.elf

-627 KB
Binary file not shown.

tests/scenarios/offline/test-log-analogin.scenario.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@ author: Brent Rubell for Adafruit Industries
44

55
steps:
66
- wait-serial: '[SD] Waiting for incoming JSON string...'
7-
- write-serial: '{"exportVersion": "1.0.0", "exportedBy": "wokwi", "exportedAt": "2024-10-28T18:58:23.976Z", "exportedFromDevice": {"board": "metroesp32s3", "firmwareVersion": "1.0.0-beta.93", "referenceVoltage": 2.6, "totalGPIOPins": 11, "totalAnalogPins": 6}, "components": [{"componentAPI": "analogio", "name": "Analog Pin", "pinName": "D14", "type": "analog_pin", "mode": "ANALOG", "direction": "INPUT", "sampleMode": "TIMER", "analogReadMode": "PIN_VALUE", "period": 5, "isPin": true}], "checksum": 149}'
7+
- write-serial: '{"exportVersion": "1.0.0", "exportedBy": "wokwi", "exportedAt": "2024-10-28T18:58:23.976Z", "exportedFromDevice": {"board": "metroesp32s3", "firmwareVersion": "1.0.0-beta.93", "referenceVoltage": 2.6, "totalGPIOPins": 11, "totalAnalogPins": 6}, "components": [{"componentAPI": "analogio", "name": "Analog Pin", "pinName": "D14", "type": "analog_pin", "mode": "ANALOG", "direction": "INPUT", "sampleMode": "TIMER", "analogReadMode": "raw", "period": 5, "isPin": true}], "checksum": 149}'
88
- write-serial: '\n'
99
- wait-serial: '[analogio] Added new pin:'
1010
- wait-serial: 'Pin Name: 14'
1111
- wait-serial: 'Period: 5000.00'
1212
- wait-serial: 'Read Mode: 18'
1313
- delay: 5s
14-
- wait-serial: '{"timestamp":0,"pin":"A14","value":0,"si_unit":"RAW"}'
14+
- wait-serial: '{"timestamp":0,"pin":"A14","value":0,"si_unit":"none"}'
1515
- set-control:
1616
part-id: pot1
1717
control: position
1818
value: 0.5
1919
- delay: 3s
20-
- wait-serial: '{"timestamp":0,"pin":"A14","value":16384,"si_unit":"RAW"}'
20+
- wait-serial: '{"timestamp":0,"pin":"A14","value":16384,"si_unit":"none"}'

tests/scenarios/offline/test-log-digital-in.scenario.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ steps:
1212
- wait-serial: 'Period: 5000'
1313
- wait-serial: 'Sample Mode: 1'
1414
- wait-serial: 'Direction: 2'
15-
- wait-serial: '{"timestamp":0,"pin":"D4","value":true,"si_unit":"BOOLEAN"}'
15+
- wait-serial: '{"timestamp":0,"pin":"D4","value":true,"si_unit":"boolean"}'
1616
- set-control:
1717
part-id: btn1
1818
control: pressed
1919
value: 1
20-
- wait-serial: '{"timestamp":0,"pin":"D4","value":false,"si_unit":"BOOLEAN"}'
20+
- wait-serial: '{"timestamp":0,"pin":"D4","value":false,"si_unit":"boolean"}'

tests/scenarios/offline/test-log-ds18b20.scenario.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ steps:
66
- wait-serial: '[SD] Waiting for incoming JSON string...'
77
- write-serial: '{"exportVersion": "1.0.0", "exportedBy": "wokwi", "exportedAt": "2024-10-28T18:58:23.976Z", "exportedFromDevice": {"board": "metroesp32s3", "firmwareVersion": "1.0.0-beta.93", "referenceVoltage": 2.6, "totalGPIOPins": 11, "totalAnalogPins": 6}, "components": [{"componentAPI": "ds18x20", "name": "DS18B20: Temperature Sensor", "sensorTypeCount": 2, "sensorType1": "object-temp-fahrenheit", "sensorType2": "object-temp", "pinName": "D6", "sensorResolution": 12, "period": 5}], "checksum": 34}'
88
- write-serial: '\n'
9-
- wait-serial: '{"timestamp":0,"pin":"D6","value":0,"si_unit":"OBJECT_TEMPERATURE"}'
10-
- wait-serial: '{"timestamp":0,"pin":"D6","value":32,"si_unit":"OBJECT_TEMPERATURE_FAHRENHEIT"}'
9+
- wait-serial: '{"timestamp":0,"pin":"D6","value":0,"si_unit":"C"}'
10+
- wait-serial: '{"timestamp":0,"pin":"D6","value":32,"si_unit":"F"}'

tests/scenarios/offline/test-valid-checksum.scenario.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@ author: Brent Rubell for Adafruit Industries
44

55
steps:
66
- wait-serial: '[SD] Waiting for incoming JSON string...'
7-
- write-serial: '{"exportVersion": "1.0.0", "exportedBy": "wokwi", "exportedAt": "2024-10-28T18:58:23.976Z", "exportedFromDevice": {"board": "metroesp32s3", "firmwareVersion": "1.0.0-beta.93", "referenceVoltage": 2.6, "totalGPIOPins": 11, "totalAnalogPins": 6}, "components": [{"componentAPI": "analogio", "name": "Analog Pin", "pinName": "D14", "type": "analog_pin", "mode": "ANALOG", "direction": "INPUT", "sampleMode": "TIMER", "analogReadMode": "PIN_VALUE", "period": 5, "isPin": true}], "checksum": 149}'
7+
- write-serial: '{"exportVersion": "1.0.0", "exportedBy": "wokwi", "exportedAt": "2024-10-28T18:58:23.976Z", "exportedFromDevice": {"board": "metroesp32s3", "firmwareVersion": "1.0.0-beta.93", "referenceVoltage": 2.6, "totalGPIOPins": 11, "totalAnalogPins": 6}, "components": [{"componentAPI": "analogio", "name": "Analog Pin", "pinName": "D14", "type": "analog_pin", "mode": "ANALOG", "direction": "INPUT", "sampleMode": "TIMER", "analogReadMode": "raw", "period": 5, "isPin": true}], "checksum": 28}'
88
- write-serial: '\n'
9-
- wait-serial: '[SD] JSON checksum OK!'
9+
- wait-serial: '[SD] Checksum OK!'

tests/test_offline.py

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# SPDX-FileCopyrightText: 2024 Brent Rubell for Adafruit Industries
1+
# SPDX-FileCopyrightText: 2024-2025, Brent Rubell for Adafruit Industries
22
# SPDX-License-Identifier: MIT
3-
# SPDX-FileDescription: Unit tests for WipperSnapper's offline mode
3+
# SPDX-FileDescription: Unit tests for WipperSnapper Offline Mode Functionality
44
import pytest
55
import subprocess
66

@@ -20,18 +20,6 @@ def run_wokwi_cli(binary, timeout, scenario, diagram):
2020
)
2121
return result
2222

23-
def test_invalid_json():
24-
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-invalid-json.scenario.yaml", f"tests/diagrams/offline.json")
25-
assert result.returncode == 0
26-
27-
def test_invalid_checksum():
28-
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-invalid-checksum.scenario.yaml", f"tests/diagrams/offline.json")
29-
assert result.returncode == 0
30-
31-
def test_valid_checksum():
32-
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-valid-checksum.scenario.yaml", f"tests/diagrams/offline.json")
33-
assert result.returncode == 0
34-
3523
def test_digital_input():
3624
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-log-digital-in.scenario.yaml", f"tests/diagrams/offline.json")
3725
assert result.returncode == 0
@@ -41,6 +29,21 @@ def test_analog_input():
4129
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-log-analogin.scenario.yaml", f"tests/diagrams/offline.json")
4230
assert result.returncode == 0
4331

32+
4433
def test_ds18b20():
4534
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-log-ds18b20.scenario.yaml", f"tests/diagrams/offline.json")
35+
assert result.returncode == 0
36+
37+
def test_invalid_json():
38+
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-invalid-json.scenario.yaml", f"tests/diagrams/offline.json")
39+
assert result.returncode == 0
40+
41+
42+
def test_invalid_checksum():
43+
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-invalid-checksum.scenario.yaml", f"tests/diagrams/offline.json")
44+
assert result.returncode == 0
45+
46+
47+
def test_valid_checksum():
48+
result = run_wokwi_cli(f"tests/bin/offline/firmware.elf", "120000", f"tests/scenarios/offline/test-valid-checksum.scenario.yaml", f"tests/diagrams/offline.json")
4649
assert result.returncode == 0

0 commit comments

Comments
 (0)