Merge "Skip VTS tests based on HAL interface version"
diff --git a/usb/aidl/vts/VtsAidlUsbTargetTest.cpp b/usb/aidl/vts/VtsAidlUsbTargetTest.cpp
index 2ec5a2c..480c826 100644
--- a/usb/aidl/vts/VtsAidlUsbTargetTest.cpp
+++ b/usb/aidl/vts/VtsAidlUsbTargetTest.cpp
@@ -253,6 +253,9 @@
std::mutex usb_mtx;
std::condition_variable usb_cv;
int usb_count = 0;
+
+ // Stores usb version
+ int32_t usb_version;
};
/*
@@ -295,6 +298,12 @@
int disabledCount = 0;
ALOGI("UsbAidlTest DataStatusCheck start");
+ auto retVersion = usb->getInterfaceVersion(&usb_version);
+ ASSERT_TRUE(retVersion.isOk()) << retVersion;
+ if (usb_version < 2) {
+ ALOGI("UsbAidlTest skipping DataStatusCheck on older interface versions");
+ GTEST_SKIP();
+ }
int64_t transactionId = rand() % 10000;
const auto& ret = usb->queryPortStatus(transactionId);
ASSERT_TRUE(ret.isOk());
@@ -603,19 +612,25 @@
* supportsComplianceWarning is false.
*/
TEST_P(UsbAidlTest, nonCompliantChargerStatus) {
- ALOGI("UsbAidlTest nonCompliantChargerStatus start");
- int64_t transactionId = rand() % 10000;
- const auto& ret = usb->queryPortStatus(transactionId);
- ASSERT_TRUE(ret.isOk());
- EXPECT_EQ(std::cv_status::no_timeout, wait());
- EXPECT_EQ(2, usb_last_cookie);
- EXPECT_EQ(transactionId, last_transactionId);
+ ALOGI("UsbAidlTest nonCompliantChargerStatus start");
+ auto retVersion = usb->getInterfaceVersion(&usb_version);
+ ASSERT_TRUE(retVersion.isOk()) << retVersion;
+ if (usb_version < 2) {
+ ALOGI("UsbAidlTest skipping nonCompliantChargerStatus on older interface versions");
+ GTEST_SKIP();
+ }
+ int64_t transactionId = rand() % 10000;
+ const auto& ret = usb->queryPortStatus(transactionId);
+ ASSERT_TRUE(ret.isOk());
+ EXPECT_EQ(std::cv_status::no_timeout, wait());
+ EXPECT_EQ(2, usb_last_cookie);
+ EXPECT_EQ(transactionId, last_transactionId);
- if (!usb_last_port_status.supportsComplianceWarnings) {
- EXPECT_TRUE(usb_last_port_status.complianceWarnings.empty());
- }
+ if (!usb_last_port_status.supportsComplianceWarnings) {
+ EXPECT_TRUE(usb_last_port_status.complianceWarnings.empty());
+ }
- ALOGI("UsbAidlTest nonCompliantChargerStatus end");
+ ALOGI("UsbAidlTest nonCompliantChargerStatus end");
}
/*
@@ -624,39 +639,51 @@
* are valid.
*/
TEST_P(UsbAidlTest, nonCompliantChargerValues) {
- ALOGI("UsbAidlTest nonCompliantChargerValues start");
- int64_t transactionId = rand() % 10000;
- const auto& ret = usb->queryPortStatus(transactionId);
- ASSERT_TRUE(ret.isOk());
- EXPECT_EQ(std::cv_status::no_timeout, wait());
- EXPECT_EQ(2, usb_last_cookie);
- EXPECT_EQ(transactionId, last_transactionId);
+ ALOGI("UsbAidlTest nonCompliantChargerValues start");
+ auto retVersion = usb->getInterfaceVersion(&usb_version);
+ ASSERT_TRUE(retVersion.isOk()) << retVersion;
+ if (usb_version < 2) {
+ ALOGI("UsbAidlTest skipping nonCompliantChargerValues on older interface versions");
+ GTEST_SKIP();
+ }
+ int64_t transactionId = rand() % 10000;
+ const auto& ret = usb->queryPortStatus(transactionId);
+ ASSERT_TRUE(ret.isOk());
+ EXPECT_EQ(std::cv_status::no_timeout, wait());
+ EXPECT_EQ(2, usb_last_cookie);
+ EXPECT_EQ(transactionId, last_transactionId);
- // Current compliance values range from [1, 4]
- if (usb_last_port_status.supportsComplianceWarnings) {
- for (auto warning : usb_last_port_status.complianceWarnings) {
- EXPECT_TRUE((int)warning >= (int)ComplianceWarning::OTHER);
- EXPECT_TRUE((int)warning <= (int)ComplianceWarning::MISSING_RP);
- }
+ // Current compliance values range from [1, 4]
+ if (usb_last_port_status.supportsComplianceWarnings) {
+ for (auto warning : usb_last_port_status.complianceWarnings) {
+ EXPECT_TRUE((int)warning >= (int)ComplianceWarning::OTHER);
+ EXPECT_TRUE((int)warning <= (int)ComplianceWarning::MISSING_RP);
}
+ }
- ALOGI("UsbAidlTest nonCompliantChargerValues end");
+ ALOGI("UsbAidlTest nonCompliantChargerValues end");
}
/*
* Test PlugOrientation Values are within range in PortStatus
*/
TEST_P(UsbAidlTest, plugOrientationValues) {
- ALOGI("UsbAidlTest plugOrientationValues start");
- int64_t transactionId = rand() % 10000;
- const auto& ret = usb->queryPortStatus(transactionId);
- ASSERT_TRUE(ret.isOk());
- EXPECT_EQ(std::cv_status::no_timeout, wait());
- EXPECT_EQ(2, usb_last_cookie);
- EXPECT_EQ(transactionId, last_transactionId);
+ ALOGI("UsbAidlTest plugOrientationValues start");
+ auto retVersion = usb->getInterfaceVersion(&usb_version);
+ ASSERT_TRUE(retVersion.isOk()) << retVersion;
+ if (usb_version < 2) {
+ ALOGI("UsbAidlTest skipping plugOrientationValues on older interface versions");
+ GTEST_SKIP();
+ }
+ int64_t transactionId = rand() % 10000;
+ const auto& ret = usb->queryPortStatus(transactionId);
+ ASSERT_TRUE(ret.isOk());
+ EXPECT_EQ(std::cv_status::no_timeout, wait());
+ EXPECT_EQ(2, usb_last_cookie);
+ EXPECT_EQ(transactionId, last_transactionId);
- EXPECT_TRUE((int)usb_last_port_status.plugOrientation >= (int)PlugOrientation::UNKNOWN);
- EXPECT_TRUE((int)usb_last_port_status.plugOrientation <= (int)PlugOrientation::PLUGGED_FLIPPED);
+ EXPECT_TRUE((int)usb_last_port_status.plugOrientation >= (int)PlugOrientation::UNKNOWN);
+ EXPECT_TRUE((int)usb_last_port_status.plugOrientation <= (int)PlugOrientation::PLUGGED_FLIPPED);
}
/*
@@ -664,37 +691,43 @@
* is active.
*/
TEST_P(UsbAidlTest, dpAltModeValues) {
- ALOGI("UsbAidlTest dpAltModeValues start");
- int64_t transactionId = rand() % 10000;
- const auto& ret = usb->queryPortStatus(transactionId);
- ASSERT_TRUE(ret.isOk());
- EXPECT_EQ(std::cv_status::no_timeout, wait());
- EXPECT_EQ(2, usb_last_cookie);
- EXPECT_EQ(transactionId, last_transactionId);
+ ALOGI("UsbAidlTest dpAltModeValues start");
+ auto retVersion = usb->getInterfaceVersion(&usb_version);
+ ASSERT_TRUE(retVersion.isOk()) << retVersion;
+ if (usb_version < 2) {
+ ALOGI("UsbAidlTest skipping dpAltModeValues on older interface versions");
+ GTEST_SKIP();
+ }
+ int64_t transactionId = rand() % 10000;
+ const auto& ret = usb->queryPortStatus(transactionId);
+ ASSERT_TRUE(ret.isOk());
+ EXPECT_EQ(std::cv_status::no_timeout, wait());
+ EXPECT_EQ(2, usb_last_cookie);
+ EXPECT_EQ(transactionId, last_transactionId);
- // Discover DisplayPort Alt Mode
- for (AltModeData altMode : usb_last_port_status.supportedAltModes) {
- if (altMode.getTag() == AltModeData::displayPortAltModeData) {
- AltModeData::DisplayPortAltModeData displayPortAltModeData =
- altMode.get<AltModeData::displayPortAltModeData>();
- EXPECT_TRUE((int)displayPortAltModeData.partnerSinkStatus >=
- (int)DisplayPortAltModeStatus::UNKNOWN);
- EXPECT_TRUE((int)displayPortAltModeData.partnerSinkStatus <=
- (int)DisplayPortAltModeStatus::ENABLED);
+ // Discover DisplayPort Alt Mode
+ for (AltModeData altMode : usb_last_port_status.supportedAltModes) {
+ if (altMode.getTag() == AltModeData::displayPortAltModeData) {
+ AltModeData::DisplayPortAltModeData displayPortAltModeData =
+ altMode.get<AltModeData::displayPortAltModeData>();
+ EXPECT_TRUE((int)displayPortAltModeData.partnerSinkStatus >=
+ (int)DisplayPortAltModeStatus::UNKNOWN);
+ EXPECT_TRUE((int)displayPortAltModeData.partnerSinkStatus <=
+ (int)DisplayPortAltModeStatus::ENABLED);
- EXPECT_TRUE((int)displayPortAltModeData.cableStatus >=
- (int)DisplayPortAltModeStatus::UNKNOWN);
- EXPECT_TRUE((int)displayPortAltModeData.cableStatus <=
- (int)DisplayPortAltModeStatus::ENABLED);
+ EXPECT_TRUE((int)displayPortAltModeData.cableStatus >=
+ (int)DisplayPortAltModeStatus::UNKNOWN);
+ EXPECT_TRUE((int)displayPortAltModeData.cableStatus <=
+ (int)DisplayPortAltModeStatus::ENABLED);
- EXPECT_TRUE((int)displayPortAltModeData.pinAssignment >=
- (int)DisplayPortAltModePinAssignment::NONE);
- EXPECT_TRUE((int)displayPortAltModeData.pinAssignment <=
- (int)DisplayPortAltModePinAssignment::F);
- }
+ EXPECT_TRUE((int)displayPortAltModeData.pinAssignment >=
+ (int)DisplayPortAltModePinAssignment::NONE);
+ EXPECT_TRUE((int)displayPortAltModeData.pinAssignment <=
+ (int)DisplayPortAltModePinAssignment::F);
}
+ }
- ALOGI("UsbAidlTest dpAltModeValues end");
+ ALOGI("UsbAidlTest dpAltModeValues end");
}
GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(UsbAidlTest);