/
nicodim4
/
Arduino-Temperature-Control-Library
Обзор
Документация
Войти
/
nicodim4
/
Arduino-Temperature-Control-Library
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/unit_test_001.cpp
84 строки
2 KB
Yurii
refactor: added `DEVICE_INSUFFICIENT_POWER_RAW` for insufficient power error
24 янв 2026, 21:58
24 янв 2026, 21:58
ffc7de9
Код
Авторство
О чём код?
// FILE: unit_test_001.cpp // AUTHOR: Miles Burton / Rob Tillaart // DATE: 2021-01-10 // PURPOSE: unit tests for the Arduino-Temperature-Control-Library // https://github.com/MilesBurton/Arduino-Temperature-Control-Library #include <ArduinoUnitTests.h> #include <Arduino.h> #include <OneWire.h> #include <DallasTemperature.h> // Mock pin for testing #define ONE_WIRE_BUS 2 unittest_setup() { fprintf(stderr, "VERSION: %s\n", DALLASTEMPLIBVERSION); } unittest_teardown() { fprintf(stderr, "\n"); } // Test constants defined in the library unittest(test_models) { assertEqual(0x10, DS18S20MODEL); assertEqual(0x28, DS18B20MODEL); assertEqual(0x22, DS1822MODEL); assertEqual(0x3B, DS1825MODEL); assertEqual(0x42, DS28EA00MODEL); } // Test error codes defined in the library unittest(test_error_code) { assertEqual(DEVICE_DISCONNECTED_C, -127); assertEqual(DEVICE_DISCONNECTED_F, -196.6); assertEqual(DEVICE_DISCONNECTED_RAW, -7040); assertEqual(DEVICE_FAULT_OPEN_C, -254); assertEqualFloat(DEVICE_FAULT_OPEN_F, -425.2, 0.1); assertEqual(DEVICE_FAULT_OPEN_RAW, -32512); assertEqual(DEVICE_FAULT_SHORTGND_C, -253); assertEqualFloat(DEVICE_FAULT_SHORTGND_F, -423.4, 0.1); assertEqual(DEVICE_FAULT_SHORTGND_RAW, -32384); assertEqual(DEVICE_FAULT_SHORTVDD_C, -252); assertEqualFloat(DEVICE_FAULT_SHORTVDD_F, -421.6, 0.1); assertEqual(DEVICE_FAULT_SHORTVDD_RAW, -32256); assertEqual(DEVICE_POWER_ON_RESET_C, -251); assertEqualFloat(DEVICE_POWER_ON_RESET_F, -419.8, 0.1); assertEqual(DEVICE_POWER_ON_RESET_RAW, -32128); assertEqual(DEVICE_INSUFFICIENT_POWER_C, -250); assertEqualFloat(DEVICE_INSUFFICIENT_POWER_F, -418.0, 0.1); assertEqual(DEVICE_INSUFFICIENT_POWER_RAW, -32000); } // Test basic initialization and functionality of the DallasTemperature library unittest(test_initialization) { OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); sensors.begin(); // Initially, there should be no devices detected assertEqual(0, sensors.getDeviceCount()); assertFalse(sensors.isParasitePowerMode()); } // Simulate a basic temperature read (mocked) unittest(test_temperature_read) { OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); sensors.begin(); // Mock reading temperature float tempC = sensors.getTempCByIndex(0); assertEqual(DEVICE_DISCONNECTED_C, tempC); // Simulated no device connected } unittest_main()