#include #include "data_manager.h" #include "test_runner.h" #include "barometer.h" #include "timer.h" #include "unity.h" static int mock_baro_called; static void reset_mock_get_baro(void) { mock_baro_called = 0; } static float set_mock_get_baro(void) { mock_baro_called = 1; return 1.0; }; static struct barometer mock_barometer = { .read_pressure = set_mock_get_baro, }; RUNNER_DECLARE_TEST(test_data_manager_init_setting) { struct data_ctx ctx; struct timer timer; get_system_timer(&timer); reset_mock_get_baro(); data_manager_init(&ctx, &timer, &mock_barometer); TEST_ASSERT_EQUAL(1, mock_baro_called); } RUNNER_DECLARE_TEST(test_data_manager_first_readings) { struct data_ctx ctx; struct timer timer; get_system_timer(&timer); data_manager_init(&ctx, &timer, &mock_barometer); reset_mock_get_baro(); data_manager_tick(&ctx); TEST_ASSERT_EQUAL(1, mock_baro_called); }