hardware: consumerir: Fix time discrepancy
Calculate target elapsed time in nanoseconds, because the elapsed time
measurement is given in nanoseconds.
Bug: 14057146
Change-Id: Idde2e6a855c0edaba072029fff1d8838f5a31ae1
Signed-off-by: Alex Ray <aray@google.com>
diff --git a/tests/tests/hardware/src/android/hardware/consumerir/cts/ConsumerIrTest.java b/tests/tests/hardware/src/android/hardware/consumerir/cts/ConsumerIrTest.java
index 395a69b..d88521e 100644
--- a/tests/tests/hardware/src/android/hardware/consumerir/cts/ConsumerIrTest.java
+++ b/tests/tests/hardware/src/android/hardware/consumerir/cts/ConsumerIrTest.java
@@ -78,9 +78,9 @@
ConsumerIrManager.CarrierFrequencyRange[] freqs = mCIR.getCarrierFrequencies();
// Transmit two seconds for min and max for each frequency range
int[] pattern = {1111, 2222, 3333, 4444, 5555, 6666, 7777, 8888, 9999};
- long totalXmitTime = 0; // get the length of the pattern
+ long totalXmitTimeNanos = 0; // get the length of the pattern
for (int slice : pattern) {
- totalXmitTime += slice;
+ totalXmitTimeNanos += slice * 1000; // add the time in nanoseconds
}
double margin = 0.1; // max fraction xmit is allowed to be off timing
@@ -90,18 +90,18 @@
mCIR.transmit(range.getMinFrequency(), pattern);
long newTime = SystemClock.elapsedRealtimeNanos();
String msg = String.format("Pattern length pattern:%d, actual:%d",
- totalXmitTime, newTime - currentTime);
- assertTrue(msg, newTime - currentTime >= totalXmitTime * (1.0 - margin));
- assertTrue(msg, newTime - currentTime <= totalXmitTime * (1.0 + margin));
+ totalXmitTimeNanos, newTime - currentTime);
+ assertTrue(msg, newTime - currentTime >= totalXmitTimeNanos * (1.0 - margin));
+ assertTrue(msg, newTime - currentTime <= totalXmitTimeNanos * (1.0 + margin));
// test max freq
currentTime = SystemClock.elapsedRealtimeNanos();
mCIR.transmit(range.getMaxFrequency(), pattern);
newTime = SystemClock.elapsedRealtimeNanos();
msg = String.format("Pattern length pattern:%d, actual:%d",
- totalXmitTime, newTime - currentTime);
- assertTrue(msg, newTime - currentTime >= totalXmitTime * (1.0 - margin));
- assertTrue(msg, newTime - currentTime <= totalXmitTime * (1.0 + margin));
+ totalXmitTimeNanos, newTime - currentTime);
+ assertTrue(msg, newTime - currentTime >= totalXmitTimeNanos * (1.0 - margin));
+ assertTrue(msg, newTime - currentTime <= totalXmitTimeNanos * (1.0 + margin));
}
}