#include #include "unity.h" #include "esp_private/system_internal.h" #include "esp_private/esp_clk.h" TEST_CASE("Test effect of rtc clk calibration compensation on system time", "[esp_system]") { uint32_t prev_cal = esp_clk_slowclk_cal_get(); int64_t t1 = esp_system_get_time(); // Modify calibration value esp_clk_slowclk_cal_set(prev_cal/2); // Internally, the origin point of rtc clk has been adjusted // so that t2 > t1 remains true int64_t t2 = esp_system_get_time(); TEST_ASSERT_GREATER_THAN(t1, t2); // Restore calibration value esp_clk_slowclk_cal_set(prev_cal); t2 = esp_system_get_time(); TEST_ASSERT_GREATER_THAN(t1, t2); }