Sensors: Add start/stop timestamps to sensor log
Change-Id: I89b0dd12f8afa1375dbc32d2870b036dd7772400
diff --git a/tests/tests/hardware/src/android/hardware/cts/helpers/TestSensorEventListener.java b/tests/tests/hardware/src/android/hardware/cts/helpers/TestSensorEventListener.java
index e8df1ab..d272d50 100644
--- a/tests/tests/hardware/src/android/hardware/cts/helpers/TestSensorEventListener.java
+++ b/tests/tests/hardware/src/android/hardware/cts/helpers/TestSensorEventListener.java
@@ -191,7 +191,8 @@
* It will overwrite the file if it already exists, the file is created in a relative directory
* named 'events' under the sensor test directory (part of external storage).
*/
- public void logCollectedEventsToFile(String fileName, long deviceWakeUpTimeMs)
+ public void logCollectedEventsToFile(String fileName, long deviceWakeUpTimeMs,
+ long testStartTimeMs, long testStopTimeMs)
throws IOException {
StringBuilder builder = new StringBuilder();
builder.append("Sensor='").append(mEnvironment.getSensor()).append("', ");
@@ -200,7 +201,11 @@
builder.append("RequestedSamplingPeriod=")
.append(mEnvironment.getRequestedSamplingPeriodUs()).append("us, ");
builder.append("MaxReportLatency=")
- .append(mEnvironment.getMaxReportLatencyUs()).append("us");
+ .append(mEnvironment.getMaxReportLatencyUs()).append("us, ");
+ builder.append("StartedTimestamp=")
+ .append(testStartTimeMs).append("ms, ");
+ builder.append("StoppedTimestamp=")
+ .append(testStopTimeMs).append("ms");
synchronized (mCollectedEvents) {
int i = 0, j = 0;
while (i < mCollectedEvents.size() && j < mTimeStampFlushCompleteEvents.size()) {
diff --git a/tests/tests/hardware/src/android/hardware/cts/helpers/sensoroperations/TestSensorOperation.java b/tests/tests/hardware/src/android/hardware/cts/helpers/sensoroperations/TestSensorOperation.java
index bc01064..97b0ba7 100644
--- a/tests/tests/hardware/src/android/hardware/cts/helpers/sensoroperations/TestSensorOperation.java
+++ b/tests/tests/hardware/src/android/hardware/cts/helpers/sensoroperations/TestSensorOperation.java
@@ -66,6 +66,8 @@
private final Executor mExecutor;
private final Handler mHandler;
private long mDeviceWakeUpTimeMs = -1;
+ private long mStartTimeMs = -1;
+ private long mStopTimeMs = -1;
/**
* An interface that defines an abstraction for operations to be performed by the
@@ -124,20 +126,21 @@
getStats().addValue("sensor_name", mEnvironment.getSensor().getName());
TestSensorEventListener listener = new TestSensorEventListener(mEnvironment, mHandler);
+ mStartTimeMs = SystemClock.elapsedRealtime();
if (mEnvironment.isDeviceSuspendTest()) {
SuspendStateMonitor suspendStateMonitor = new SuspendStateMonitor();
- long startTimeMs = SystemClock.elapsedRealtime();
// Device should go into suspend here.
mExecutor.execute(mSensorManager, listener);
- long endTimeMs = SystemClock.elapsedRealtime();
+ mStopTimeMs = SystemClock.elapsedRealtime();
// Check if the device has gone into suspend during test execution.
mDeviceWakeUpTimeMs = suspendStateMonitor.getLastWakeUpTime();
suspendStateMonitor.cancel();
Assert.assertTrue("Device did not go into suspend during test execution",
- startTimeMs < mDeviceWakeUpTimeMs &&
- mDeviceWakeUpTimeMs < endTimeMs);
+ mStartTimeMs < mDeviceWakeUpTimeMs &&
+ mDeviceWakeUpTimeMs < mStopTimeMs);
} else {
mExecutor.execute(mSensorManager, listener);
+ mStopTimeMs = SystemClock.elapsedRealtime();
}
boolean failed = false;
@@ -213,7 +216,8 @@
}
try {
- listener.logCollectedEventsToFile(sanitizedFileName, mDeviceWakeUpTimeMs);
+ listener.logCollectedEventsToFile(sanitizedFileName, mDeviceWakeUpTimeMs,
+ mStartTimeMs, mStopTimeMs);
} catch (IOException e) {
Log.w(TAG, "Unable to save collected events to file: " + sanitizedFileName, e);
}