Added CDM support for production readiness reporting.

[ Merge of http://go/wvgerrit/151518 ]

Extended the CDM layer to report OEMCrypto's production readiness
via string property query.

If OEMCrypto implementents OEMCrypto_ProductionReady(), then the
reported readiness by the CDM will report "True" or "False".

If OEMCrypto does not implement OEMCrypto_ProductionReady() then no
level of readiness is assumed, and the CDM will report "Unknown".

Bug: 231655151
Test: run_prov30_tests and request_license_test
Change-Id: I6afe481ef00ac129d02b004eca89a65810bfbff8
This commit is contained in:
Alex Dale
2022-05-05 20:48:04 -07:00
parent c4a2a08ee6
commit cd5afa88a6
13 changed files with 112 additions and 10 deletions

View File

@@ -5284,6 +5284,14 @@ TEST_F(WvCdmRequestLicenseTest, QueryStatus) {
value == wvcdm::QUERY_VALUE_CONFIGURABLE ||
value == wvcdm::QUERY_VALUE_ALWAYS_ON)
<< "Watermarking support";
EXPECT_EQ(wvcdm::NO_ERROR,
decryptor_->QueryStatus(kLevelDefault,
wvcdm::QUERY_KEY_PRODUCTION_READY, &value));
EXPECT_TRUE(value == wvcdm::QUERY_VALUE_TRUE ||
value == wvcdm::QUERY_VALUE_FALSE ||
value == wvcdm::QUERY_VALUE_UNKNOWN)
<< "Production ready";
}
TEST_F(WvCdmRequestLicenseTest, QueryStatusL3) {
@@ -5427,11 +5435,19 @@ TEST_F(WvCdmRequestLicenseTest, QueryStatusL3) {
EXPECT_EQ(wvcdm::NO_ERROR,
decryptor_->QueryStatus(
kLevelDefault, wvcdm::QUERY_KEY_WATERMARKING_SUPPORT, &value));
kLevel3, wvcdm::QUERY_KEY_WATERMARKING_SUPPORT, &value));
EXPECT_TRUE(value == wvcdm::QUERY_VALUE_NOT_SUPPORTED ||
value == wvcdm::QUERY_VALUE_CONFIGURABLE ||
value == wvcdm::QUERY_VALUE_ALWAYS_ON)
<< "Watermarking support";
EXPECT_EQ(wvcdm::NO_ERROR,
decryptor_->QueryStatus(kLevel3, wvcdm::QUERY_KEY_PRODUCTION_READY,
&value));
EXPECT_TRUE(value == wvcdm::QUERY_VALUE_TRUE ||
value == wvcdm::QUERY_VALUE_FALSE ||
value == wvcdm::QUERY_VALUE_UNKNOWN)
<< "Production ready";
}
TEST_F(WvCdmRequestLicenseTest, QueryOemCryptoSessionId) {