Rename MockedVehicleHal to HidlMockedVehicleHal.
The existing MockedVehicleHal is mocking a HIDL VHAL backend. We
rename it to HidlMockedVehicleHal and add a new AIDL VHAL backend
mock class. This CL keeps the exsiting behavior for all clients
to use the HidlMockedVehicleHal, but we would gradually migate
each client to use AidlMockedVehicleHal.
Test: Presubmit
Bug: 216195629
Change-Id: I123767cb552da2a68848500de0c5943a93074ebf
diff --git a/tests/carservice_test/src/com/android/car/CarCabinManagerTest.java b/tests/carservice_test/src/com/android/car/CarCabinManagerTest.java
index 7256cf0..c2fe42c 100644
--- a/tests/carservice_test/src/com/android/car/CarCabinManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/CarCabinManagerTest.java
@@ -38,7 +38,7 @@
import androidx.test.filters.MediumTest;
import com.android.car.vehiclehal.VehiclePropValueBuilder;
-import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.VehicleHalPropertyHandler;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -133,7 +133,7 @@
}
});
mCarCabinManager.setBooleanProperty(PROP, AREA, true);
- getMockedVehicleHal().injectError(ERR_CODE, PROP, AREA);
+ getHidlMockedVehicleHal().injectError(ERR_CODE, PROP, AREA);
assertTrue(errorLatch.await(DEFAULT_WAIT_TIMEOUT_MS, TimeUnit.MILLISECONDS));
assertEquals(PROP, propertyIdReceived.value);
assertEquals(AREA, areaIdReceived.value);
@@ -156,7 +156,7 @@
.build();
assertEquals(0, mAvailable.availablePermits());
- getMockedVehicleHal().injectEvent(v);
+ getHidlMockedVehicleHal().injectEvent(v);
assertTrue(mAvailable.tryAcquire(2L, TimeUnit.SECONDS));
assertTrue(mEventBoolVal);
@@ -169,7 +169,7 @@
.addIntValue(75)
.build();
assertEquals(0, mAvailable.availablePermits());
- getMockedVehicleHal().injectEvent(v);
+ getHidlMockedVehicleHal().injectEvent(v);
assertTrue(mAvailable.tryAcquire(2L, TimeUnit.SECONDS));
assertEquals(mEventIntVal, 75);
diff --git a/tests/carservice_test/src/com/android/car/CarDiagnosticManagerTest.java b/tests/carservice_test/src/com/android/car/CarDiagnosticManagerTest.java
index 6c13971..a3021e2 100644
--- a/tests/carservice_test/src/com/android/car/CarDiagnosticManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/CarDiagnosticManagerTest.java
@@ -49,8 +49,8 @@
import com.android.car.vehiclehal.DiagnosticEventBuilder;
import com.android.car.vehiclehal.DiagnosticJson;
import com.android.car.vehiclehal.VehiclePropValueBuilder;
-import com.android.car.vehiclehal.test.MockedVehicleHal.ErrorCodeHandler;
-import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.ErrorCodeHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.VehicleHalPropertyHandler;
import org.junit.Rule;
import org.junit.Test;
@@ -468,7 +468,7 @@
mLiveFrameEventBuilder.addIntSensor(
IntegerSensorIndex.RUNTIME_SINCE_ENGINE_START, 5100);
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(time));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(time));
assertTrue(listener.waitForEvent(time));
CarDiagnosticEvent liveFrame = listener.getLastEvent();
@@ -487,7 +487,7 @@
CarDiagnosticManager.FRAME_TYPE_LIVE,
android.car.hardware.CarSensorManager.SENSOR_RATE_NORMAL);
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build());
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build());
assertTrue(listener.waitForEvent());
CarDiagnosticEvent liveFrame = listener.getLastEvent();
@@ -522,7 +522,7 @@
CarDiagnosticManager.FRAME_TYPE_LIVE,
android.car.hardware.CarSensorManager.SENSOR_RATE_NORMAL);
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build());
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build());
assertTrue(listener.waitForEvent());
CarDiagnosticEvent liveFrame = listener.getLastEvent();
@@ -549,7 +549,7 @@
IntegerSensorIndex.COMMANDED_SECONDARY_AIR_STATUS,
SecondaryAirStatus.FROM_OUTSIDE_OR_OFF);
long timestamp = SystemClock.elapsedRealtimeNanos();
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
assertTrue(listener.waitForEvent(timestamp));
@@ -586,7 +586,7 @@
IntegerSensorIndex.IGNITION_SPECIFIC_MONITORS, sparkMonitorsValue);
long timestamp = SystemClock.elapsedRealtimeNanos();
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
assertTrue(listener.waitForEvent(timestamp));
@@ -629,7 +629,7 @@
IntegerSensorIndex.IGNITION_SPECIFIC_MONITORS, compressionMonitorsValue);
timestamp += 1000;
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
assertTrue(listener.waitForEvent(timestamp));
@@ -676,7 +676,7 @@
mLiveFrameEventBuilder.addIntSensor(
IntegerSensorIndex.FUEL_TYPE, FuelType.BIFUEL_RUNNING_LPG);
long timestamp = SystemClock.elapsedRealtimeNanos();
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
assertTrue(listener.waitForEvent(timestamp));
@@ -700,7 +700,7 @@
mLiveFrameEventBuilder.addFloatSensor(FloatSensorIndex.OXYGEN_SENSOR1_VOLTAGE, 0.125f);
long timestamp = SystemClock.elapsedRealtimeNanos();
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
assertTrue(listener.waitForEvent(timestamp));
@@ -757,7 +757,7 @@
listener2.reset();
long time = SystemClock.elapsedRealtimeNanos();
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(time));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(time));
assertTrue(listener1.waitForEvent(time));
assertTrue(listener2.waitForEvent(time));
@@ -787,7 +787,7 @@
mCarDiagnosticManager.unregisterListener(listener1);
time += 1000;
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(time));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(time));
assertFalse(listener1.waitForEvent(time));
assertTrue(listener2.waitForEvent(time));
@@ -815,7 +815,7 @@
listener.reset();
VehiclePropValue injectedEvent =
mFreezeFrameProperties.addNewEvent(mFreezeFrameEventBuilder);
- getMockedVehicleHal().injectEvent(injectedEvent);
+ getHidlMockedVehicleHal().injectEvent(injectedEvent);
assertTrue(listener.waitForEvent(injectedEvent.timestamp));
CarDiagnosticEvent freezeFrame = listener.getLastEvent();
@@ -825,7 +825,7 @@
mFreezeFrameEventBuilder.addIntSensor(
IntegerSensorIndex.ABSOLUTE_BAROMETRIC_PRESSURE, 22);
injectedEvent = mFreezeFrameProperties.addNewEvent(mFreezeFrameEventBuilder);
- getMockedVehicleHal().injectEvent(injectedEvent);
+ getHidlMockedVehicleHal().injectEvent(injectedEvent);
assertTrue(listener.waitForEvent(injectedEvent.timestamp));
freezeFrame = listener.getLastEvent();
@@ -855,14 +855,14 @@
VehiclePropValue injectedEvent =
mFreezeFrameProperties.addNewEvent(mFreezeFrameEventBuilder);
- getMockedVehicleHal().injectEvent(injectedEvent);
+ getHidlMockedVehicleHal().injectEvent(injectedEvent);
generatedTimestamps.add(injectedEvent.timestamp);
assertTrue(listener.waitForEvent(injectedEvent.timestamp));
injectedEvent =
mFreezeFrameProperties.addNewEvent(
mFreezeFrameEventBuilder, injectedEvent.timestamp + 1000);
- getMockedVehicleHal().injectEvent(injectedEvent);
+ getHidlMockedVehicleHal().injectEvent(injectedEvent);
generatedTimestamps.add(injectedEvent.timestamp);
assertTrue(listener.waitForEvent(injectedEvent.timestamp));
@@ -883,7 +883,7 @@
VehiclePropValue injectedEvent =
mFreezeFrameProperties.addNewEvent(mFreezeFrameEventBuilder);
- getMockedVehicleHal().injectEvent(injectedEvent);
+ getHidlMockedVehicleHal().injectEvent(injectedEvent);
assertTrue(listener.waitForEvent(injectedEvent.timestamp));
assertThat(mCarDiagnosticManager.getFreezeFrame(injectedEvent.timestamp)).isNotNull();
@@ -944,12 +944,12 @@
VehiclePropValue injectedEvent =
mFreezeFrameProperties.addNewEvent(mFreezeFrameEventBuilder);
long time = injectedEvent.timestamp;
- getMockedVehicleHal().injectEvent(injectedEvent);
+ getHidlMockedVehicleHal().injectEvent(injectedEvent);
assertFalse(listener1.waitForEvent(time));
assertTrue(listener2.waitForEvent(time));
time += 1000;
- getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(time));
+ getHidlMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(time));
assertFalse(listener1.waitForEvent(time));
assertTrue(listener2.waitForEvent(time));
}
diff --git a/tests/carservice_test/src/com/android/car/CarDrivingRestrictionsTest.java b/tests/carservice_test/src/com/android/car/CarDrivingRestrictionsTest.java
index 890981a..cf730ec 100644
--- a/tests/carservice_test/src/com/android/car/CarDrivingRestrictionsTest.java
+++ b/tests/carservice_test/src/com/android/car/CarDrivingRestrictionsTest.java
@@ -96,7 +96,7 @@
listener.reset();
// Test Parked state and corresponding restrictions based on car_ux_restrictions_map.xml
Log.d(TAG, "Injecting gear park");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.GEAR_SELECTION)
.addIntValue(VehicleGear.GEAR_PARK)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -106,7 +106,7 @@
assertThat(drivingEvent.eventValue).isEqualTo(CarDrivingStateEvent.DRIVING_STATE_PARKED);
Log.d(TAG, "Injecting speed 0");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.PERF_VEHICLE_SPEED)
.addFloatValue(0.0f)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -116,7 +116,7 @@
// change between parked and idling.
listener.reset();
Log.d(TAG, "Injecting gear drive");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.GEAR_SELECTION)
.addIntValue(VehicleGear.GEAR_DRIVE)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -128,7 +128,7 @@
// Test Moving state and corresponding restrictions based on car_ux_restrictions_map.xml
listener.reset();
Log.d(TAG, "Injecting speed 30");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.PERF_VEHICLE_SPEED)
.addFloatValue(30.0f)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -144,7 +144,7 @@
// Test Idling state and corresponding restrictions based on car_ux_restrictions_map.xml
listener.reset();
Log.d(TAG, "Injecting speed 0");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.PERF_VEHICLE_SPEED)
.addFloatValue(0.0f)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -163,7 +163,7 @@
// make a difference to the driving state.
listener.reset();
Log.d(TAG, "Injecting parking brake on");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.PARKING_BRAKE_ON)
.setBooleanValue(true)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -186,7 +186,7 @@
// Start with gear = park and speed = 0 to begin with a known state.
listener.reset();
Log.d(TAG, "Injecting gear park");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.GEAR_SELECTION)
.addIntValue(VehicleGear.GEAR_PARK)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -196,7 +196,7 @@
assertThat(drivingEvent.eventValue).isEqualTo(CarDrivingStateEvent.DRIVING_STATE_PARKED);
Log.d(TAG, "Injecting speed 0");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.PERF_VEHICLE_SPEED)
.addFloatValue(0.0f)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -206,7 +206,7 @@
// driving state
listener.reset();
Log.d(TAG, "Injecting gear -1");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.GEAR_SELECTION)
.addIntValue(-1)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
@@ -224,7 +224,7 @@
// the UX restrictions will change to fully restricted.
listener.reset();
Log.d(TAG, "Injecting speed -1");
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.PERF_VEHICLE_SPEED)
.addFloatValue(-1.0f)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
diff --git a/tests/carservice_test/src/com/android/car/CarHvacManagerTest.java b/tests/carservice_test/src/com/android/car/CarHvacManagerTest.java
index 7ed9066..d118f6e 100644
--- a/tests/carservice_test/src/com/android/car/CarHvacManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/CarHvacManagerTest.java
@@ -42,7 +42,7 @@
import androidx.test.filters.MediumTest;
import com.android.car.vehiclehal.VehiclePropValueBuilder;
-import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.VehicleHalPropertyHandler;
import junit.framework.AssertionFailedError;
@@ -175,7 +175,7 @@
}
});
mCarHvacManager.setBooleanProperty(PROP, AREA, true);
- getMockedVehicleHal().injectError(ERR_CODE, PROP, AREA);
+ getHidlMockedVehicleHal().injectError(ERR_CODE, PROP, AREA);
assertTrue(errorLatch.await(DEFAULT_WAIT_TIMEOUT_MS, TimeUnit.MILLISECONDS));
assertEquals(PROP, propertyIdReceived.value);
assertEquals(AREA, areaIdReceived.value);
@@ -198,7 +198,7 @@
.addIntValue(1)
.build();
assertEquals(0, mAvailable.availablePermits());
- getMockedVehicleHal().injectEvent(v);
+ getHidlMockedVehicleHal().injectEvent(v);
assertTrue(mAvailable.tryAcquire(2L, TimeUnit.SECONDS));
assertTrue(mEventBoolVal);
@@ -211,7 +211,7 @@
.addFloatValue(67f)
.build();
assertEquals(0, mAvailable.availablePermits());
- getMockedVehicleHal().injectEvent(v);
+ getHidlMockedVehicleHal().injectEvent(v);
assertTrue(mAvailable.tryAcquire(2L, TimeUnit.SECONDS));
assertEquals(67, mEventFloatVal, 0);
@@ -224,7 +224,7 @@
.addIntValue(4)
.build();
assertEquals(0, mAvailable.availablePermits());
- getMockedVehicleHal().injectEvent(v);
+ getHidlMockedVehicleHal().injectEvent(v);
assertTrue(mAvailable.tryAcquire(2L, TimeUnit.SECONDS));
assertEquals(4, mEventIntVal);
@@ -251,7 +251,7 @@
.addIntValue(1)
.build();
assertEquals(0, mAvailable.availablePermits());
- getMockedVehicleHal().injectEvent(v);
+ getHidlMockedVehicleHal().injectEvent(v);
// Verify client get the callback.
assertTrue(mAvailable.tryAcquire(2L, TimeUnit.SECONDS));
@@ -260,7 +260,7 @@
// test unregister callback
mCarHvacManager.unregisterCallback(listener);
- assertThrows(AssertionFailedError.class, () -> getMockedVehicleHal().injectEvent(v));
+ assertThrows(AssertionFailedError.class, () -> getHidlMockedVehicleHal().injectEvent(v));
}
private class HvacPropertyHandler implements VehicleHalPropertyHandler {
diff --git a/tests/carservice_test/src/com/android/car/CarProjectionManagerTest.java b/tests/carservice_test/src/com/android/car/CarProjectionManagerTest.java
index ebc493f..18721ed 100644
--- a/tests/carservice_test/src/com/android/car/CarProjectionManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/CarProjectionManagerTest.java
@@ -34,7 +34,7 @@
import androidx.test.filters.MediumTest;
import com.android.car.vehiclehal.VehiclePropValueBuilder;
-import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.VehicleHalPropertyHandler;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -134,7 +134,7 @@
.addIntValue(values)
.build();
- getMockedVehicleHal().injectEvent(injectValue);
+ getHidlMockedVehicleHal().injectEvent(injectValue);
if (isLong) {
Thread.sleep(1200); // Long press is > 1s.
@@ -152,7 +152,7 @@
.addIntValue(upValues)
.build();
- getMockedVehicleHal().injectEvent(injectValue);
+ getHidlMockedVehicleHal().injectEvent(injectValue);
}
diff --git a/tests/carservice_test/src/com/android/car/CarPropertyManagerTest.java b/tests/carservice_test/src/com/android/car/CarPropertyManagerTest.java
index edb354a..5cb67c1 100644
--- a/tests/carservice_test/src/com/android/car/CarPropertyManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/CarPropertyManagerTest.java
@@ -48,7 +48,7 @@
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.MediumTest;
-import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.VehicleHalPropertyHandler;
import com.google.common.truth.Truth;
@@ -638,9 +638,9 @@
secFakeValueDriveSide.value.int32Values.add(3); // 0 in HAL indicate false;
secFakeValueDriveSide.timestamp = SystemClock.elapsedRealtimeNanos();
// inject the new event first
- getMockedVehicleHal().injectEvent(secFakeValueDriveSide);
+ getHidlMockedVehicleHal().injectEvent(secFakeValueDriveSide);
// inject the old event
- getMockedVehicleHal().injectEvent(firstFakeValueDriveSide);
+ getHidlMockedVehicleHal().injectEvent(firstFakeValueDriveSide);
callback.assertOnChangeEventCalled();
// Client should only get the new event
assertThat((int) callback.getLastCarPropertyValue(CUSTOM_SEAT_INT_PROP_1).getValue())
@@ -670,8 +670,8 @@
fakeValuePsgSide.timestamp = SystemClock.elapsedRealtimeNanos();
// inject passenger event before driver event
- getMockedVehicleHal().injectEvent(fakeValuePsgSide);
- getMockedVehicleHal().injectEvent(fakeValueDriveSide);
+ getHidlMockedVehicleHal().injectEvent(fakeValuePsgSide);
+ getHidlMockedVehicleHal().injectEvent(fakeValueDriveSide);
callback.assertOnChangeEventCalled();
// both events should be received by listener
@@ -711,7 +711,7 @@
for (VehiclePropValue prop: props) {
// inject passenger event before driver event
- getMockedVehicleHal().injectEvent(prop);
+ getHidlMockedVehicleHal().injectEvent(prop);
assertThat(callback.getEventCounter()).isEqualTo(0);
}
}
diff --git a/tests/carservice_test/src/com/android/car/CarPropertyServiceTest.java b/tests/carservice_test/src/com/android/car/CarPropertyServiceTest.java
index c86143f..937e485 100644
--- a/tests/carservice_test/src/com/android/car/CarPropertyServiceTest.java
+++ b/tests/carservice_test/src/com/android/car/CarPropertyServiceTest.java
@@ -38,7 +38,7 @@
import androidx.test.filters.MediumTest;
import com.android.car.vehiclehal.VehiclePropValueBuilder;
-import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.VehicleHalPropertyHandler;
import org.junit.Test;
import org.junit.runner.RunWith;
diff --git a/tests/carservice_test/src/com/android/car/CarSensorManagerTest.java b/tests/carservice_test/src/com/android/car/CarSensorManagerTest.java
index 11bd3a9..cbee08e 100644
--- a/tests/carservice_test/src/com/android/car/CarSensorManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/CarSensorManagerTest.java
@@ -162,7 +162,7 @@
listener.reset();
// Set the value TRUE and wait for the event to arrive
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.PARKING_BRAKE_ON)
.setBooleanValue(true)
.setTimestamp(51L)
@@ -187,7 +187,7 @@
listener.reset();
// Set the value FALSE
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.PARKING_BRAKE_ON)
.setTimestamp(1001)
.setBooleanValue(false)
@@ -218,7 +218,7 @@
.setTimestamp(2001)
.setBooleanValue(true)
.build();
- getMockedVehicleHal().injectEvent(value, true);
+ getHidlMockedVehicleHal().injectEvent(value, true);
// Ensure we did not get a callback (should timeout)
Log.i(TAG, "waiting for unexpected callback -- should timeout.");
@@ -269,7 +269,7 @@
int mgrIgnitionState) throws Exception{
listener.reset();
long time = SystemClock.elapsedRealtimeNanos();
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.IGNITION_STATE)
.addIntValue(halIgnitionState)
.setTimestamp(time)
@@ -317,7 +317,7 @@
int carSensorValue) throws Exception {
listener.reset();
long time = SystemClock.elapsedRealtimeNanos();
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.GEAR_SELECTION)
.addIntValue(halValue)
.setTimestamp(time)
@@ -369,7 +369,7 @@
.setTimestamp(1001L)
.setBooleanValue(true)
.build();
- getMockedVehicleHal().injectEvent(value, true);
+ getHidlMockedVehicleHal().injectEvent(value, true);
assertTrue(listener1.waitForSensorChange(1001L));
assertTrue(listener2.waitForSensorChange(1001L));
@@ -410,7 +410,7 @@
.setTimestamp(2001)
.setBooleanValue(false)
.build();
- getMockedVehicleHal().injectEvent(value, true);
+ getHidlMockedVehicleHal().injectEvent(value, true);
assertTrue(listener1.waitForSensorChange(2001));
assertTrue(listener2.waitForSensorChange(2001));
assertTrue(listener3.waitForSensorChange(2001));
@@ -451,7 +451,7 @@
.setTimestamp(3002)
.setBooleanValue(false)
.build();
- getMockedVehicleHal().injectEvent(value, true);
+ getHidlMockedVehicleHal().injectEvent(value, true);
assertTrue(listener1.waitForSensorChange());
assertTrue(listener2.waitForSensorChange());
assertFalse(listener3.waitForSensorChange());
@@ -463,7 +463,7 @@
.setTimestamp()
.setBooleanValue(true)
.build();
- getMockedVehicleHal().injectEvent(value, true);
+ getHidlMockedVehicleHal().injectEvent(value, true);
assertTrue(listener1.waitForSensorChange());
assertTrue(listener2.waitForSensorChange());
diff --git a/tests/carservice_test/src/com/android/car/CarVendorExtensionManagerTest.java b/tests/carservice_test/src/com/android/car/CarVendorExtensionManagerTest.java
index 47ccb28..b0a9cf3 100644
--- a/tests/carservice_test/src/com/android/car/CarVendorExtensionManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/CarVendorExtensionManagerTest.java
@@ -38,7 +38,7 @@
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.MediumTest;
-import com.android.car.vehiclehal.test.MockedVehicleHal;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal;
import com.android.car.vehiclehal.test.VehiclePropConfigBuilder;
import org.junit.Assert;
@@ -284,13 +284,13 @@
}
@Override
- protected synchronized MockedVehicleHal createMockedVehicleHal() {
- MockedVehicleHal hal = new VendorExtMockedVehicleHal();
+ protected synchronized HidlMockedVehicleHal createHidlMockedVehicleHal() {
+ HidlMockedVehicleHal hal = new VendorExtMockedVehicleHal();
hal.addProperties(mConfigs);
return hal;
}
- private static class VendorExtMockedVehicleHal extends MockedVehicleHal {
+ private static class VendorExtMockedVehicleHal extends HidlMockedVehicleHal {
private final SparseArray<VehiclePropValue> mValues = new SparseArray<>();
private byte[] mBytes = null;
diff --git a/tests/carservice_test/src/com/android/car/MockedCarTestBase.java b/tests/carservice_test/src/com/android/car/MockedCarTestBase.java
index 60912fe..c3f54d8 100644
--- a/tests/carservice_test/src/com/android/car/MockedCarTestBase.java
+++ b/tests/carservice_test/src/com/android/car/MockedCarTestBase.java
@@ -34,8 +34,8 @@
import android.frameworks.automotive.powerpolicy.internal.ICarPowerPolicySystemNotification;
import android.frameworks.automotive.powerpolicy.internal.PolicyState;
import android.hardware.automotive.vehicle.V2_0.VehiclePropValue;
-import android.hardware.automotive.vehicle.V2_0.VehiclePropertyAccess;
-import android.hardware.automotive.vehicle.V2_0.VehiclePropertyChangeMode;
+import android.hardware.automotive.vehicle.VehiclePropertyAccess;
+import android.hardware.automotive.vehicle.VehiclePropertyChangeMode;
import android.os.Binder;
import android.os.Handler;
import android.os.IBinder;
@@ -60,10 +60,11 @@
import com.android.car.systeminterface.WakeLockInterface;
import com.android.car.test.utils.TemporaryDirectory;
import com.android.car.user.CarUserService;
-import com.android.car.vehiclehal.test.MockedVehicleHal;
-import com.android.car.vehiclehal.test.MockedVehicleHal.DefaultPropertyHandler;
-import com.android.car.vehiclehal.test.MockedVehicleHal.StaticPropertyHandler;
-import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import com.android.car.vehiclehal.test.AidlMockedVehicleHal;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.DefaultPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.StaticPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.VehicleHalPropertyHandler;
import com.android.car.vehiclehal.test.VehiclePropConfigBuilder;
import com.android.car.watchdog.CarWatchdogService;
@@ -82,7 +83,7 @@
/**
* Base class for testing with mocked vehicle HAL (=car).
- * It is up to each app to start emulation by getMockedVehicleHal().start() as there will be
+ * It is up to each app to start emulation by getHidlMockedVehicleHal().start() as there will be
* per test set up that should be done before starting.
*/
public class MockedCarTestBase {
@@ -93,9 +94,13 @@
private static final IBinder sCarServiceToken = new Binder();
private static boolean sRealCarServiceReleased;
+ // TODO(b/216195629): Change this to true after we migrate all clients.
+ protected boolean mUseAidlVhal = false;
+
private Car mCar;
private ICarImpl mCarImpl;
- private MockedVehicleHal mMockedVehicleHal;
+ private HidlMockedVehicleHal mHidlMockedVehicleHal;
+ private AidlMockedVehicleHal mAidlMockedVehicleHal;
private VehicleStub mMockedVehicleStub;
private SystemInterface mFakeSystemInterface;
private MockedCarTestContext mMockedCarTestContext;
@@ -113,12 +118,20 @@
private MockitoSession mSession;
- protected synchronized MockedVehicleHal createMockedVehicleHal() {
- return new MockedVehicleHal();
+ protected synchronized HidlMockedVehicleHal createHidlMockedVehicleHal() {
+ return new HidlMockedVehicleHal();
}
- protected synchronized MockedVehicleHal getMockedVehicleHal() {
- return mMockedVehicleHal;
+ protected synchronized AidlMockedVehicleHal createAidlMockedVehicleHal() {
+ return new AidlMockedVehicleHal();
+ }
+
+ protected synchronized HidlMockedVehicleHal getHidlMockedVehicleHal() {
+ return mHidlMockedVehicleHal;
+ }
+
+ protected synchronized AidlMockedVehicleHal getAidlMockedVehicleHal() {
+ return mAidlMockedVehicleHal;
}
protected synchronized SystemInterface getFakeSystemInterface() {
@@ -203,7 +216,8 @@
releaseRealCarService(getContext());
- mMockedVehicleHal = createMockedVehicleHal();
+ mHidlMockedVehicleHal = createHidlMockedVehicleHal();
+ mAidlMockedVehicleHal = createAidlMockedVehicleHal();
configureMockedHal();
mFakeSystemInterface = getSystemInterfaceBuilder().build();
@@ -234,7 +248,11 @@
// This should be done here as feature property is accessed inside the constructor.
initMockedHal();
- mMockedVehicleStub = new HidlVehicleStub(mMockedVehicleHal);
+ if (!mUseAidlVhal) {
+ mMockedVehicleStub = new HidlVehicleStub(mHidlMockedVehicleHal);
+ } else {
+ mMockedVehicleStub = new AidlVehicleStub(mAidlMockedVehicleHal);
+ }
ICarImpl carImpl = new ICarImpl(mMockedCarTestContext, /*builtinContext=*/null,
mMockedVehicleStub, mFakeSystemInterface, /*vehicleInterfaceName=*/"MockedCar",
@@ -269,7 +287,8 @@
if (mMockIOInterface != null) {
mMockIOInterface.tearDown();
}
- mMockedVehicleHal = null;
+ mHidlMockedVehicleHal = null;
+ mAidlMockedVehicleHal = null;
} finally {
if (mSession != null) {
mSession.finishMocking();
@@ -278,7 +297,7 @@
}
public void injectErrorEvent(int propId, int areaId, int errorCode) {
- mMockedVehicleHal.injectError(errorCode, propId, areaId);
+ mHidlMockedVehicleHal.injectError(errorCode, propId, areaId);
}
/**
@@ -300,7 +319,7 @@
private synchronized void initMockedHal() throws Exception {
for (Map.Entry<VehiclePropConfigBuilder, VehicleHalPropertyHandler> entry
: mHalConfig.entrySet()) {
- mMockedVehicleHal.addProperty(entry.getKey().build(), entry.getValue());
+ mHidlMockedVehicleHal.addProperty(entry.getKey().build(), entry.getValue());
}
mHalConfig.clear();
}
diff --git a/tests/carservice_test/src/com/android/car/MockedVmsTestBase.java b/tests/carservice_test/src/com/android/car/MockedVmsTestBase.java
index ff649de..9516c7c 100644
--- a/tests/carservice_test/src/com/android/car/MockedVmsTestBase.java
+++ b/tests/carservice_test/src/com/android/car/MockedVmsTestBase.java
@@ -37,7 +37,7 @@
import android.util.Pair;
import com.android.car.vehiclehal.VehiclePropValueBuilder;
-import com.android.car.vehiclehal.test.MockedVehicleHal;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal;
import org.junit.Before;
@@ -174,7 +174,7 @@
}
}
- class MockHalClient implements MockedVehicleHal.VehicleHalPropertyHandler {
+ class MockHalClient implements HidlMockedVehicleHal.VehicleHalPropertyHandler {
private BlockingQueue<VehiclePropValue> mMessages = new LinkedBlockingQueue<>();
@Override
@@ -186,14 +186,14 @@
}
void sendMessage(int... message) {
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.VEHICLE_MAP_SERVICE)
.addIntValue(message)
.build());
}
void sendMessage(int[] message, byte[] payload) {
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.VEHICLE_MAP_SERVICE)
.addIntValue(message)
.addByteValue(payload)
diff --git a/tests/carservice_test/src/com/android/car/cluster/ClusterHomeManagerTest.java b/tests/carservice_test/src/com/android/car/cluster/ClusterHomeManagerTest.java
index 96ce521..d610737 100644
--- a/tests/carservice_test/src/com/android/car/cluster/ClusterHomeManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/cluster/ClusterHomeManagerTest.java
@@ -52,7 +52,7 @@
import com.android.car.MockedCarTestBase;
import com.android.car.am.FixedActivityService;
import com.android.car.vehiclehal.VehiclePropValueBuilder;
-import com.android.car.vehiclehal.test.MockedVehicleHal;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal;
import com.android.dx.mockito.inline.extended.ExtendedMockito;
import org.junit.Rule;
@@ -192,7 +192,7 @@
@Test
public void testClusterSwitchUi() throws InterruptedException {
- getMockedVehicleHal().injectEvent(createSwitchUiEvent(UI_TYPE_2));
+ getHidlMockedVehicleHal().injectEvent(createSwitchUiEvent(UI_TYPE_2));
mClusterStateListenerCalled.await(TEST_TIMEOUT_MS, TimeUnit.MILLISECONDS);
assertThat(mState).isNotNull();
@@ -205,13 +205,13 @@
VehiclePropValue event = new VehiclePropValue();
event.prop = CLUSTER_SWITCH_UI;
event.value.floatValues.add((float) 0.0);
- getMockedVehicleHal().injectEvent(event);
+ getHidlMockedVehicleHal().injectEvent(event);
assertThat(mClusterStateListenerCalled.getCount()).isEqualTo(1);
}
@Test
public void testClusterState() throws InterruptedException {
- getMockedVehicleHal().injectEvent(createDisplayStateEvent(
+ getHidlMockedVehicleHal().injectEvent(createDisplayStateEvent(
DISPLAY_ON, BOUNDS_LEFT, BOUNDS_TOP, BOUNDS_RIGHT, BOUNDS_BOTTOM,
INSET_LEFT, INSET_TOP, INSET_RIGHT, INSET_BOTTOM));
mClusterStateListenerCalled.await(TEST_TIMEOUT_MS, TimeUnit.MILLISECONDS);
@@ -244,7 +244,7 @@
event.prop = CLUSTER_DISPLAY_STATE;
// Only one int value is set while 9 is expected. This should be handled properly.
event.value.int32Values.add(DISPLAY_ON);
- getMockedVehicleHal().injectEvent(event);
+ getHidlMockedVehicleHal().injectEvent(event);
assertThat(mClusterStateListenerCalled.getCount()).isEqualTo(1);
event = createDisplayStateEvent(
@@ -252,7 +252,7 @@
INSET_LEFT, INSET_TOP, INSET_RIGHT, INSET_BOTTOM);
// Remove the last value so we have one value missing.
event.value.int32Values.remove(8);
- getMockedVehicleHal().injectEvent(event);
+ getHidlMockedVehicleHal().injectEvent(event);
assertThat(mClusterStateListenerCalled.getCount()).isEqualTo(1);
}
@@ -393,7 +393,7 @@
assertThat(mDisplayIdCaptor.getValue()).isEqualTo(CLUSTER_DISPLAY_ID);
}
- private class ClusterPropertyHandler implements MockedVehicleHal.VehicleHalPropertyHandler {
+ private class ClusterPropertyHandler implements HidlMockedVehicleHal.VehicleHalPropertyHandler {
SparseArray<VehiclePropValue> mPropValueMap = new SparseArray<>();
SparseIntArray mPropStatusMap = new SparseIntArray();
diff --git a/tests/carservice_test/src/com/android/car/input/CarInputManagerTest.java b/tests/carservice_test/src/com/android/car/input/CarInputManagerTest.java
index ba7627b..abd5b64 100644
--- a/tests/carservice_test/src/com/android/car/input/CarInputManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/input/CarInputManagerTest.java
@@ -978,7 +978,7 @@
}
private void injectKeyEvent(boolean down, int keyCode, int vehicleDisplayType) {
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.HW_KEY_INPUT)
.addIntValue(down ? 0 : 1, keyCode, vehicleDisplayType)
.build());
@@ -992,13 +992,13 @@
for (int i = 0; i < numClicks - 1; i++) {
builder.addIntValue(0);
}
- getMockedVehicleHal().injectEvent(builder.build());
+ getHidlMockedVehicleHal().injectEvent(builder.build());
}
private void injectCustomInputEvent(int inputCode, int targetDisplayType, int repeatCounter) {
VehiclePropValueBuilder builder = VehiclePropValueBuilder.newBuilder(
VehicleProperty.HW_CUSTOM_INPUT)
.addIntValue(inputCode).addIntValue(targetDisplayType).addIntValue(repeatCounter);
- getMockedVehicleHal().injectEvent(builder.build());
+ getHidlMockedVehicleHal().injectEvent(builder.build());
}
}
diff --git a/tests/carservice_test/src/com/android/car/power/CarPowerManagementTest.java b/tests/carservice_test/src/com/android/car/power/CarPowerManagementTest.java
index eba4401..e8e5f60 100644
--- a/tests/carservice_test/src/com/android/car/power/CarPowerManagementTest.java
+++ b/tests/carservice_test/src/com/android/car/power/CarPowerManagementTest.java
@@ -48,7 +48,7 @@
import com.android.car.systeminterface.SystemInterface;
import com.android.car.user.CarUserService;
import com.android.car.vehiclehal.VehiclePropValueBuilder;
-import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import com.android.car.vehiclehal.test.HidlMockedVehicleHal.VehicleHalPropertyHandler;
import com.google.android.collect.Lists;
@@ -362,7 +362,7 @@
assertWaitForVhal();
// No param in the event, should be ignored.
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.AP_POWER_STATE_REQ)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
.addIntValue(0)
@@ -608,7 +608,7 @@
}
private void sendPowerState(int state, int param) {
- getMockedVehicleHal().injectEvent(
+ getHidlMockedVehicleHal().injectEvent(
VehiclePropValueBuilder.newBuilder(VehicleProperty.AP_POWER_STATE_REQ)
.setTimestamp(SystemClock.elapsedRealtimeNanos())
.addIntValue(state, param)
diff --git a/vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/AidlMockedVehicleHal.java b/vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/AidlMockedVehicleHal.java
new file mode 100644
index 0000000..eafc02f
--- /dev/null
+++ b/vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/AidlMockedVehicleHal.java
@@ -0,0 +1,79 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.vehiclehal.test;
+
+import android.hardware.automotive.vehicle.GetValueRequests;
+import android.hardware.automotive.vehicle.IVehicle;
+import android.hardware.automotive.vehicle.IVehicleCallback;
+import android.hardware.automotive.vehicle.SetValueRequests;
+import android.hardware.automotive.vehicle.SubscribeOptions;
+import android.hardware.automotive.vehicle.VehiclePropConfigs;
+import android.hardware.automotive.vehicle.VehiclePropValue;
+import android.os.RemoteException;
+
+public class AidlMockedVehicleHal extends IVehicle.Stub {
+
+ /**
+ * Interface for handler of each property.
+ */
+ public interface VehicleHalPropertyHandler {
+ default void onPropertySet(VehiclePropValue value) {}
+ default VehiclePropValue onPropertyGet(VehiclePropValue value) {
+ return null;
+ }
+ default void onPropertySubscribe(int property, float sampleRate) {}
+ default void onPropertyUnsubscribe(int property) {}
+
+ VehicleHalPropertyHandler NOP = new VehicleHalPropertyHandler() {};
+ }
+
+ @Override public VehiclePropConfigs getAllPropConfigs() throws RemoteException {
+ // TODO(b/216195629): Mock this method.
+ return null;
+ }
+
+ @Override public VehiclePropConfigs getPropConfigs(int[] props) throws RemoteException {
+ // TODO(b/216195629): Mock this method.
+ return null;
+ }
+
+ @Override public void getValues(IVehicleCallback callback, GetValueRequests requests)
+ throws RemoteException {
+ // TODO(b/216195629): Mock this method.
+ }
+
+ @Override public void setValues(IVehicleCallback callback, SetValueRequests requests)
+ throws RemoteException {
+ // TODO(b/216195629): Mock this method.
+ }
+
+ @Override public void subscribe(IVehicleCallback callback, SubscribeOptions[] options,
+ int maxSharedMemoryFileCount) throws RemoteException {
+ // TODO(b/216195629): Mock this method.
+ }
+
+ @Override public void unsubscribe(IVehicleCallback callback, int[] propIds)
+ throws RemoteException {
+ // TODO(b/216195629): Mock this method.
+ }
+
+ @Override public void returnSharedMemory(IVehicleCallback callback, long sharedMemoryId)
+ throws RemoteException {
+ // TODO(b/216195629): Mock this method.
+ }
+
+}
diff --git a/vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/MockedVehicleHal.java b/vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/HidlMockedVehicleHal.java
similarity index 98%
rename from vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/MockedVehicleHal.java
rename to vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/HidlMockedVehicleHal.java
index 40c3d72..7bdcd64 100644
--- a/vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/MockedVehicleHal.java
+++ b/vehicle-hal-support-lib/test/com/android/car/vehiclehal/test/HidlMockedVehicleHal.java
@@ -41,13 +41,15 @@
/**
* Mocked implementation of {@link IVehicle}.
*/
-public class MockedVehicleHal extends IVehicle.Stub {
+public class HidlMockedVehicleHal extends IVehicle.Stub {
/**
* Interface for handler of each property.
*/
public interface VehicleHalPropertyHandler {
default void onPropertySet(VehiclePropValue value) {}
- default VehiclePropValue onPropertyGet(VehiclePropValue value) { return null; }
+ default VehiclePropValue onPropertyGet(VehiclePropValue value) {
+ return null;
+ }
default void onPropertySubscribe(int property, float sampleRate) {}
default void onPropertyUnsubscribe(int property) {}
@@ -327,7 +329,7 @@
assertEquals(mConfig.prop, property);
if (!mSubscribed) {
throw new IllegalArgumentException("Property was not subscribed 0x"
- + toHexString( property));
+ + toHexString(property));
}
mSubscribed = false;
}