Refactor GenerateKeyRequest to reduce number of parameters
[ Merge of http://go/wvgerrit/16625 and http://go/wvgerrit/16633 ] Reduce the number of parameters needed by GenerateKeyRequest. Combining all output values into a single struct. BUG: 26162546 Change-Id: Ibeb3f4df4a8e877511f8ab2e6c543001a921f285
This commit is contained in:
@@ -225,20 +225,19 @@ status_t WVDrmPlugin::getKeyRequest(
|
||||
cdmParameters[cdmKey] = cdmValue;
|
||||
}
|
||||
|
||||
CdmKeyMessage keyRequest;
|
||||
CdmKeyRequestType cdmKeyRequestType;
|
||||
string cdmDefaultUrl;
|
||||
CdmKeyRequest keyRequest;
|
||||
CdmResponseType res = mCDM->GenerateKeyRequest(
|
||||
cdmSessionId, cdmKeySetId, cdmInitDataType, processedInitData,
|
||||
cdmLicenseType, cdmParameters, &mPropertySet, determineOrigin(),
|
||||
&keyRequest, &cdmKeyRequestType, &cdmDefaultUrl);
|
||||
*keyRequestType = ConvertFromCdmKeyRequestType(cdmKeyRequestType);
|
||||
&keyRequest);
|
||||
|
||||
*keyRequestType = ConvertFromCdmKeyRequestType(keyRequest.type);
|
||||
|
||||
if (isCdmResponseTypeSuccess(res)) {
|
||||
defaultUrl.clear();
|
||||
defaultUrl.setTo(cdmDefaultUrl.data(), cdmDefaultUrl.size());
|
||||
defaultUrl.setTo(keyRequest.url.data(), keyRequest.url.size());
|
||||
|
||||
request = ToVector(keyRequest);
|
||||
request = ToVector(keyRequest.message);
|
||||
}
|
||||
|
||||
if (keyType == kKeyType_Release) {
|
||||
|
||||
@@ -44,12 +44,12 @@ class MockCDM : public WvContentDecryptionModule {
|
||||
|
||||
MOCK_METHOD1(CloseSession, CdmResponseType(const CdmSessionId&));
|
||||
|
||||
MOCK_METHOD11(GenerateKeyRequest,
|
||||
MOCK_METHOD9(GenerateKeyRequest,
|
||||
CdmResponseType(const CdmSessionId&, const CdmKeySetId&,
|
||||
const std::string&, const CdmInitData&,
|
||||
const CdmLicenseType, CdmAppParameterMap&,
|
||||
CdmClientPropertySet*, const std::string&,
|
||||
CdmKeyMessage*, CdmKeyRequestType*, string*));
|
||||
CdmKeyRequest*));
|
||||
|
||||
MOCK_METHOD3(AddKey, CdmResponseType(const CdmSessionId&,
|
||||
const CdmKeyResponse&,
|
||||
@@ -319,29 +319,41 @@ TEST_F(WVDrmPluginTest, GeneratesKeyRequests) {
|
||||
const char* mimeType = testSets[i].mimeType;
|
||||
const CdmInitData& initData = testSets[i].initDataOut;
|
||||
|
||||
CdmKeyRequest initialRequest = {
|
||||
cdmRequest,
|
||||
kKeyRequestTypeInitial,
|
||||
kDefaultUrl
|
||||
};
|
||||
|
||||
CdmKeyRequest renewalRequest = {
|
||||
cdmRequest,
|
||||
kKeyRequestTypeRenewal,
|
||||
kDefaultUrl
|
||||
};
|
||||
|
||||
CdmKeyRequest releaseRequest = {
|
||||
cdmRequest,
|
||||
kKeyRequestTypeRelease,
|
||||
kDefaultUrl
|
||||
};
|
||||
|
||||
EXPECT_CALL(*cdm, GenerateKeyRequest(cdmSessionId, "", mimeType, initData,
|
||||
kLicenseTypeOffline, cdmParameters, _,
|
||||
_, _, _, _))
|
||||
.WillOnce(DoAll(SetArgPointee<8>(cdmRequest),
|
||||
SetArgPointee<9>(kKeyRequestTypeInitial),
|
||||
SetArgPointee<10>(kDefaultUrl),
|
||||
_, _))
|
||||
.WillOnce(DoAll(SetArgPointee<8>(initialRequest),
|
||||
Return(wvcdm::KEY_MESSAGE)));
|
||||
|
||||
EXPECT_CALL(*cdm, GenerateKeyRequest(cdmSessionId, "", mimeType, initData,
|
||||
kLicenseTypeStreaming, cdmParameters,
|
||||
_, _, _, _, _))
|
||||
.WillOnce(DoAll(SetArgPointee<8>(cdmRequest),
|
||||
SetArgPointee<9>(kKeyRequestTypeRenewal),
|
||||
SetArgPointee<10>(kDefaultUrl),
|
||||
_, _, _))
|
||||
.WillOnce(DoAll(SetArgPointee<8>(renewalRequest),
|
||||
Return(wvcdm::KEY_MESSAGE)));
|
||||
|
||||
EXPECT_CALL(*cdm, GenerateKeyRequest("", cdmKeySetId, mimeType, initData,
|
||||
kLicenseTypeRelease, cdmParameters,
|
||||
NotNull(), StrEq(EMPTY_ORIGIN), _, _,
|
||||
_))
|
||||
.WillOnce(DoAll(SetArgPointee<8>(cdmRequest),
|
||||
SetArgPointee<9>(kKeyRequestTypeRelease),
|
||||
SetArgPointee<10>(kDefaultUrl),
|
||||
NotNull(), StrEq(EMPTY_ORIGIN), _))
|
||||
|
||||
.WillOnce(DoAll(SetArgPointee<8>(releaseRequest),
|
||||
Return(wvcdm::KEY_MESSAGE)));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user