diff --git a/libwvdrmengine/cdm/test/request_license_test.cpp b/libwvdrmengine/cdm/test/request_license_test.cpp index e6e22174..e2ac4aed 100644 --- a/libwvdrmengine/cdm/test/request_license_test.cpp +++ b/libwvdrmengine/cdm/test/request_license_test.cpp @@ -282,19 +282,19 @@ class WvCdmRequestLicenseTest : public testing::Test { } void GenerateRenewalRequest(const std::string& key_system, - CdmLicenseType license_type) { + CdmLicenseType license_type, + std::string* server_url) { // TODO application makes a license request, CDM will renew the license // when appropriate. std::string init_data; wvcdm::CdmAppParameterMap app_parameters; - std::string server_url; EXPECT_EQ(wvcdm::KEY_MESSAGE, decryptor_.GenerateKeyRequest(session_id_, key_set_id_, init_data, license_type, app_parameters, - &key_msg_, &server_url)); + &key_msg_, server_url)); // TODO(edwinwong, rfrias): Add tests cases for when license server url // is empty on renewal. Need appropriate key id at the server. - EXPECT_NE(0u, server_url.size()); + EXPECT_NE(0u, server_url->size()); } void GenerateKeyRelease(CdmKeySetId key_set_id) { @@ -694,8 +694,11 @@ TEST_F(WvCdmRequestLicenseTest, StreamingLicenseRenewal) { GenerateKeyRequest(g_key_system, g_key_id, kLicenseTypeStreaming); VerifyKeyRequestResponse(g_license_server, g_client_auth, g_key_id, false); - GenerateRenewalRequest(g_key_system, kLicenseTypeStreaming); - VerifyKeyRequestResponse(g_license_server, g_client_auth, g_key_id, true); + std::string license_server; + GenerateRenewalRequest(g_key_system, kLicenseTypeStreaming, &license_server); + if (license_server.empty()) + license_server = g_license_server; + VerifyKeyRequestResponse(license_server, g_client_auth, g_key_id, true); decryptor_.CloseSession(session_id_); } @@ -704,8 +707,11 @@ TEST_F(WvCdmRequestLicenseTest, OfflineLicenseRenewal) { GenerateKeyRequest(g_key_system, g_key_id, kLicenseTypeOffline); VerifyKeyRequestResponse(g_license_server, g_client_auth, g_key_id, false); - GenerateRenewalRequest(g_key_system, kLicenseTypeOffline); - VerifyKeyRequestResponse(g_license_server, g_client_auth, g_key_id, true); + std::string license_server; + GenerateRenewalRequest(g_key_system, kLicenseTypeOffline, &license_server); + if (license_server.empty()) + license_server = g_license_server; + VerifyKeyRequestResponse(license_server, g_client_auth, g_key_id, true); decryptor_.CloseSession(session_id_); }