Run SAP tests on slots based on configs

Test: atest VtsHalSapV1_0TargetTest
Bug: 210436956
Change-Id: I203446a76f160802775f20032331990674718df5
This commit is contained in:
Sarah Chin
2022-02-02 16:04:45 -08:00
parent a2932530f3
commit 6c256dbca4
2 changed files with 39 additions and 2 deletions

View File

@@ -16,8 +16,37 @@
#include <sap_hidl_hal_utils.h>
bool isServiceValidForDeviceConfiguration(hidl_string& serviceName) {
if (isSsSsEnabled()) {
// Device is configured as SSSS.
if (serviceName != SAP_SERVICE_SLOT1_NAME) {
LOG(DEBUG) << "Not valid for SSSS device.";
return false;
}
} else if (isDsDsEnabled()) {
// Device is configured as DSDS.
if (serviceName != SAP_SERVICE_SLOT1_NAME && serviceName != SAP_SERVICE_SLOT2_NAME) {
LOG(DEBUG) << "Not valid for DSDS device.";
return false;
}
} else if (isTsTsEnabled()) {
// Device is configured as TSTS.
if (serviceName != SAP_SERVICE_SLOT1_NAME && serviceName != SAP_SERVICE_SLOT2_NAME &&
serviceName != SAP_SERVICE_SLOT3_NAME) {
LOG(DEBUG) << "Not valid for TSTS device.";
return false;
}
}
return true;
}
void SapHidlTest::SetUp() {
sap = ISap::getService(GetParam());
hidl_string serviceName = GetParam();
if (!isServiceValidForDeviceConfiguration(serviceName)) {
LOG(DEBUG) << "Skipped the test due to device configuration.";
GTEST_SKIP();
}
sap = ISap::getService(serviceName);
ASSERT_NE(sap, nullptr);
sapCb = new SapCallback(*this);

View File

@@ -36,7 +36,15 @@ using ::android::hardware::Void;
using ::android::sp;
#define TIMEOUT_PERIOD 40
#define SAP_SERVICE_NAME "slot1"
// HAL instance name for SIM slot 1 or single SIM device
#define SAP_SERVICE_SLOT1_NAME "slot1"
// HAL instance name for SIM slot 2 on dual SIM device
#define SAP_SERVICE_SLOT2_NAME "slot2"
// HAL instance name for SIM slot 3 on triple SIM device
#define SAP_SERVICE_SLOT3_NAME "slot3"
class SapHidlTest;