mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 05:49:27 +00:00
Add multiple provision attempts in vts openSession test
Bug: 233085112 Test: VtsAidlHalDrmTargetTest Change-Id: I4dd42b3c7155b6476f51a8cc4cca185bea7d565f
This commit is contained in:
@@ -73,6 +73,7 @@ std::string HalBaseName(const std::string& fullname) {
|
||||
}
|
||||
|
||||
const char* kDrmIface = "android.hardware.drm.IDrmFactory";
|
||||
const int MAX_OPEN_SESSION_ATTEMPTS = 3;
|
||||
|
||||
std::string HalFullName(const std::string& iface, const std::string& basename) {
|
||||
return iface + '/' + basename;
|
||||
@@ -328,9 +329,19 @@ SessionId DrmHalTest::openSession(SecurityLevel level, Status* err) {
|
||||
*/
|
||||
SessionId DrmHalTest::openSession() {
|
||||
SessionId sessionId;
|
||||
auto ret = drmPlugin->openSession(SecurityLevel::DEFAULT, &sessionId);
|
||||
EXPECT_OK(ret);
|
||||
EXPECT_NE(0u, sessionId.size());
|
||||
|
||||
int attmpt = 0;
|
||||
while (attmpt++ < MAX_OPEN_SESSION_ATTEMPTS) {
|
||||
auto ret = drmPlugin->openSession(SecurityLevel::DEFAULT, &sessionId);
|
||||
if(DrmErr(ret) == Status::ERROR_DRM_NOT_PROVISIONED) {
|
||||
provision();
|
||||
} else {
|
||||
EXPECT_OK(ret);
|
||||
EXPECT_NE(0u, sessionId.size());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return sessionId;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user