Fixed issue with wrong timestamp
Telemetry service used steady_clock for generating timestamps, but it
produced incorrect time. This change makes telemetry service use
steady_clock for intervals and system_clock for timestamps.
Changed readings timestamp to display current timestamp instead of a
time when reading was received.
Tested:
- correct timestamp is visible on dbus
- other telemetry service features are still working
Change-Id: Ic49f45640532cfffaeff5e0bd5591e6d99e5def5
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
diff --git a/tests/src/test_numeric_threshold.cpp b/tests/src/test_numeric_threshold.cpp
index bda31a0..851d4a9 100644
--- a/tests/src/test_numeric_threshold.cpp
+++ b/tests/src/test_numeric_threshold.cpp
@@ -69,14 +69,14 @@
}
NumericParams&
- Updates(std::vector<std::tuple<size_t, uint64_t, double>> val)
+ Updates(std::vector<std::tuple<size_t, Milliseconds, double>> val)
{
updates = std::move(val);
return *this;
}
NumericParams&
- Expected(std::vector<std::tuple<size_t, uint64_t, double>> val)
+ Expected(std::vector<std::tuple<size_t, Milliseconds, double>> val)
{
expected = std::move(val);
return *this;
@@ -88,21 +88,23 @@
<< ", Updates: ";
for (const auto& [index, timestamp, value] : o.updates)
{
- *os << "{ SensorIndex: " << index << ", Timestamp: " << timestamp
- << ", Value: " << value << " }, ";
+ *os << "{ SensorIndex: " << index
+ << ", Timestamp: " << timestamp.count() << ", Value: " << value
+ << " }, ";
}
*os << "Expected: ";
for (const auto& [index, timestamp, value] : o.expected)
{
- *os << "{ SensorIndex: " << index << ", Timestamp: " << timestamp
- << ", Value: " << value << " }, ";
+ *os << "{ SensorIndex: " << index
+ << ", Timestamp: " << timestamp.count() << ", Value: " << value
+ << " }, ";
}
*os << " }";
}
numeric::Direction direction;
- std::vector<std::tuple<size_t, uint64_t, double>> updates;
- std::vector<std::tuple<size_t, uint64_t, double>> expected;
+ std::vector<std::tuple<size_t, Milliseconds, double>> updates;
+ std::vector<std::tuple<size_t, Milliseconds, double>> expected;
};
class TestNumericThresholdNoDwellTime :
@@ -116,53 +118,70 @@
}
};
-INSTANTIATE_TEST_SUITE_P(
- _, TestNumericThresholdNoDwellTime,
- Values(
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 89.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 91.0}})
- .Expected({{0, 2, 91.0}}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 99.0}, {0, 3, 80.0}, {0, 4, 98.0}})
- .Expected({{0, 2, 99.0}, {0, 4, 98.0}}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 99.0}, {1, 3, 100.0}, {1, 4, 98.0}})
- .Expected({{0, 2, 99.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 91.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}})
- .Expected({{0, 2, 80.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {0, 3, 99.0}, {0, 4, 85.0}})
- .Expected({{0, 2, 80.0}, {0, 4, 85.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {1, 3, 99.0}, {1, 4, 88.0}})
- .Expected({{0, 2, 80.0}, {1, 4, 88.0}}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 98.0}, {0, 2, 91.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {0, 3, 85.0}, {0, 4, 91.0}})
- .Expected({{0, 2, 80.0}, {0, 4, 91.0}}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 100.0}, {1, 2, 80.0}, {0, 3, 85.0}, {1, 4, 91.0}})
- .Expected({{0, 3, 85.0}, {1, 4, 91.0}})));
+INSTANTIATE_TEST_SUITE_P(_, TestNumericThresholdNoDwellTime,
+ Values(NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0}, {0, 2ms, 89.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0}, {0, 2ms, 91.0}})
+ .Expected({{0, 2ms, 91.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0},
+ {0, 2ms, 99.0},
+ {0, 3ms, 80.0},
+ {0, 4ms, 98.0}})
+ .Expected({{0, 2ms, 99.0}, {0, 4ms, 98.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0},
+ {0, 2ms, 99.0},
+ {1, 3ms, 100.0},
+ {1, 4ms, 98.0}})
+ .Expected({{0, 2ms, 99.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0}, {0, 2ms, 91.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0}, {0, 2ms, 80.0}})
+ .Expected({{0, 2ms, 80.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {0, 3ms, 99.0},
+ {0, 4ms, 85.0}})
+ .Expected({{0, 2ms, 80.0}, {0, 4ms, 85.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {1, 3ms, 99.0},
+ {1, 4ms, 88.0}})
+ .Expected({{0, 2ms, 80.0}, {1, 4ms, 88.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 98.0}, {0, 2ms, 91.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {0, 3ms, 85.0},
+ {0, 4ms, 91.0}})
+ .Expected({{0, 2ms, 80.0}, {0, 4ms, 91.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 100.0},
+ {1, 2ms, 80.0},
+ {0, 3ms, 85.0},
+ {1, 4ms, 91.0}})
+ .Expected({{0, 3ms, 85.0},
+ {1, 4ms, 91.0}})));
TEST_P(TestNumericThresholdNoDwellTime, senorsIsUpdatedMultipleTimes)
{
@@ -195,53 +214,70 @@
}
};
-INSTANTIATE_TEST_SUITE_P(
- _, TestNumericThresholdWithDwellTime,
- Values(
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 89.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 91.0}})
- .Expected({{0, 2, 91.0}}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 99.0}, {0, 3, 80.0}, {0, 4, 98.0}})
- .Expected({{0, 2, 99.0}, {0, 4, 98.0}}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {1, 2, 99.0}, {0, 3, 100.0}, {1, 4, 86.0}})
- .Expected({{0, 3, 100.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 91.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}})
- .Expected({{0, 2, 80.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {0, 3, 99.0}, {0, 4, 85.0}})
- .Expected({{0, 2, 80.0}, {0, 4, 85.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {1, 3, 99.0}, {1, 4, 88.0}})
- .Expected({{0, 2, 80.0}, {1, 4, 88.0}}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 98.0}, {0, 2, 91.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {0, 3, 85.0}, {0, 4, 91.0}})
- .Expected({{0, 2, 80.0}, {0, 4, 91.0}}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 100.0}, {1, 2, 80.0}, {0, 3, 85.0}, {1, 4, 91.0}})
- .Expected({{0, 3, 85.0}, {1, 4, 91.0}})));
+INSTANTIATE_TEST_SUITE_P(_, TestNumericThresholdWithDwellTime,
+ Values(NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0}, {0, 2ms, 89.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0}, {0, 2ms, 91.0}})
+ .Expected({{0, 2ms, 91.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0},
+ {0, 2ms, 99.0},
+ {0, 3ms, 80.0},
+ {0, 4ms, 98.0}})
+ .Expected({{0, 2ms, 99.0}, {0, 4ms, 98.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0},
+ {1, 2ms, 99.0},
+ {0, 3ms, 100.0},
+ {1, 4ms, 86.0}})
+ .Expected({{0, 3ms, 100.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0}, {0, 2ms, 91.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0}, {0, 2ms, 80.0}})
+ .Expected({{0, 2ms, 80.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {0, 3ms, 99.0},
+ {0, 4ms, 85.0}})
+ .Expected({{0, 2ms, 80.0}, {0, 4ms, 85.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {1, 3ms, 99.0},
+ {1, 4ms, 88.0}})
+ .Expected({{0, 2ms, 80.0}, {1, 4ms, 88.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 98.0}, {0, 2ms, 91.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {0, 3ms, 85.0},
+ {0, 4ms, 91.0}})
+ .Expected({{0, 2ms, 80.0}, {0, 4ms, 91.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 100.0},
+ {1, 2ms, 80.0},
+ {0, 3ms, 85.0},
+ {1, 4ms, 91.0}})
+ .Expected({{0, 3ms, 85.0},
+ {1, 4ms, 91.0}})));
TEST_P(TestNumericThresholdWithDwellTime,
senorsIsUpdatedMultipleTimesSleepAfterEveryUpdate)
@@ -276,53 +312,70 @@
}
};
-INSTANTIATE_TEST_SUITE_P(
- _, TestNumericThresholdWithDwellTime2,
- Values(
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 89.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 91.0}})
- .Expected({{0, 2, 91.0}}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {0, 2, 99.0}, {0, 3, 80.0}, {0, 4, 98.0}})
- .Expected({{0, 4, 98.0}}),
- NumericParams()
- .Direction(numeric::Direction::increasing)
- .Updates({{0, 1, 80.0}, {1, 2, 99.0}, {0, 3, 100.0}, {1, 4, 98.0}})
- .Expected({{0, 3, 100.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 91.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}})
- .Expected({{0, 2, 80.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {0, 3, 99.0}, {0, 4, 85.0}})
- .Expected({{0, 4, 85.0}}),
- NumericParams()
- .Direction(numeric::Direction::decreasing)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {1, 3, 99.0}, {1, 4, 88.0}})
- .Expected({{0, 2, 80.0}, {1, 4, 88.0}}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 98.0}, {0, 2, 91.0}})
- .Expected({}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 100.0}, {0, 2, 80.0}, {0, 3, 85.0}, {0, 4, 91.0}})
- .Expected({{0, 4, 91.0}}),
- NumericParams()
- .Direction(numeric::Direction::either)
- .Updates({{0, 1, 100.0}, {1, 2, 80.0}, {0, 3, 85.0}, {1, 4, 91.0}})
- .Expected({{0, 3, 85.0}, {1, 4, 91.0}})));
+INSTANTIATE_TEST_SUITE_P(_, TestNumericThresholdWithDwellTime2,
+ Values(NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0}, {0, 2ms, 89.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0}, {0, 2ms, 91.0}})
+ .Expected({{0, 2ms, 91.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0},
+ {0, 2ms, 99.0},
+ {0, 3ms, 80.0},
+ {0, 4ms, 98.0}})
+ .Expected({{0, 4ms, 98.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::increasing)
+ .Updates({{0, 1ms, 80.0},
+ {1, 2ms, 99.0},
+ {0, 3ms, 100.0},
+ {1, 4ms, 98.0}})
+ .Expected({{0, 3ms, 100.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0}, {0, 2ms, 91.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0}, {0, 2ms, 80.0}})
+ .Expected({{0, 2ms, 80.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {0, 3ms, 99.0},
+ {0, 4ms, 85.0}})
+ .Expected({{0, 4ms, 85.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::decreasing)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {1, 3ms, 99.0},
+ {1, 4ms, 88.0}})
+ .Expected({{0, 2ms, 80.0}, {1, 4ms, 88.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 98.0}, {0, 2ms, 91.0}})
+ .Expected({}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 100.0},
+ {0, 2ms, 80.0},
+ {0, 3ms, 85.0},
+ {0, 4ms, 91.0}})
+ .Expected({{0, 4ms, 91.0}}),
+ NumericParams()
+ .Direction(numeric::Direction::either)
+ .Updates({{0, 1ms, 100.0},
+ {1, 2ms, 80.0},
+ {0, 3ms, 85.0},
+ {1, 4ms, 91.0}})
+ .Expected({{0, 3ms, 85.0},
+ {1, 4ms, 91.0}})));
TEST_P(TestNumericThresholdWithDwellTime2,
senorsIsUpdatedMultipleTimesSleepAfterLastUpdate)