Add dumpsys::ticks_to_milliseconds
Bug: 259118978
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines
Change-Id: I2b4d6bd596cf975de3565d5ebaa6889a8dad40e2
diff --git a/system/main/shim/dumpsys.h b/system/main/shim/dumpsys.h
index 818e4f8..e1cc7cc 100644
--- a/system/main/shim/dumpsys.h
+++ b/system/main/shim/dumpsys.h
@@ -48,6 +48,10 @@
return (static_cast<double>(ticks) * 0.625 * 0.001);
}
+inline double ticks_to_milliseconds(uint16_t ticks) {
+ return (static_cast<double>(ticks) * 0.625);
+}
+
inline double supervision_timeout_to_seconds(uint16_t timeout) {
return (static_cast<double>(timeout) * 0.01);
}
diff --git a/system/main/test/main_shim_test.cc b/system/main/test/main_shim_test.cc
index 71ee878..0d57c90 100644
--- a/system/main/test/main_shim_test.cc
+++ b/system/main/test/main_shim_test.cc
@@ -88,6 +88,11 @@
: public bluetooth::hci::LeAddressManagerCallback {};
namespace {
+constexpr double kMaxAbsoluteError = .0000001;
+constexpr double kTicksInMs = 20479.375;
+constexpr double kTicksInSec = 20.479375;
+constexpr uint16_t kTicks = 32767;
+
std::map<std::string, std::promise<uint16_t>> mock_function_handle_promise_map;
// Utility to provide a file descriptor for /dev/null when possible, but
@@ -754,3 +759,13 @@
TEST_F(MainShimTest, acl_dumpsys) {
MakeAcl()->Dump(std::make_unique<DevNullOrStdErr>()->Fd());
}
+
+TEST_F(MainShimTest, ticks_to_milliseconds) {
+ ASSERT_THAT(kTicksInMs,
+ DoubleNear(ticks_to_milliseconds(kTicks), kMaxAbsoluteError));
+}
+
+TEST_F(MainShimTest, ticks_to_seconds) {
+ ASSERT_THAT(kTicksInSec,
+ DoubleNear(ticks_to_seconds(kTicks), kMaxAbsoluteError));
+}