M5UnitUnified 0.4.0 git rev:cb8c468
Loading...
Searching...
No Matches
test_helper.hpp File Reference

Helper for testing UnitComponent periodic measurements. More...

#include <M5Utility.hpp>
#include <algorithm>
#include <cstdint>
#include <numeric>
#include <vector>

Go to the source code of this file.

Classes

struct  m5::unit::googletest::PeriodicMeasurementResult
 Result of periodic measurement data collection with statistical analysis. More...
 

Namespaces

namespace  m5
 Top level namespace of M5stack.
 

Functions

template<class U >
PeriodicMeasurementResult m5::unit::googletest::collect_periodic_measurements (U *unit, const uint32_t times=8, const uint32_t timeout_duration=0, void(*callback)(U *)=nullptr)
 Collect periodic measurement data from a unit.
 

Detailed Description

Helper for testing UnitComponent periodic measurements.

Note
Depends on GoogleTest

Function Documentation

◆ collect_periodic_measurements()

template<class U >
PeriodicMeasurementResult m5::unit::googletest::collect_periodic_measurements ( U * unit,
const uint32_t times = 8,
const uint32_t timeout_duration = 0,
void(* callback )(U *) = nullptr )

Collect periodic measurement data from a unit.

Template Parameters
Um5::unit::Component-derived class
Parameters
unitUnit instance to collect measurements from
timesNumber of update cycles to collect
timeout_durationTimeout in ms (0 = auto-calculate as interval * (times + 1))
callbackOptional callback invoked after each successful update
Returns
PeriodicMeasurementResult containing collected intervals and statistics