Source release 14.2.0
This commit is contained in:
@@ -15,6 +15,8 @@
|
||||
#include "metrics.pb.h"
|
||||
#include "metrics_collections.h"
|
||||
#include "scoped_ptr.h"
|
||||
#include "test_base.h"
|
||||
#include "test_printers.h"
|
||||
#include "wv_cdm_types.h"
|
||||
|
||||
namespace {
|
||||
@@ -240,10 +242,10 @@ const uint32_t kOemCertSystemId = 7346;
|
||||
|
||||
namespace wvcdm {
|
||||
|
||||
class CryptoSessionForTest : public CryptoSession, public testing::Test {
|
||||
class CryptoSessionForTest : public TestCryptoSession, public WvCdmTestBase {
|
||||
public:
|
||||
using CryptoSession::ExtractSystemIdFromOemCert;
|
||||
CryptoSessionForTest() : CryptoSession(metrics_.GetCryptoMetrics()) {}
|
||||
CryptoSessionForTest() : TestCryptoSession(metrics_.GetCryptoMetrics()) {}
|
||||
|
||||
void SetUp() {}
|
||||
|
||||
@@ -264,7 +266,7 @@ TEST(CryptoSessionTest, CanExtractSystemIdFromOemCertificate) {
|
||||
ASSERT_EQ(kOemCertSystemId, system_id);
|
||||
}
|
||||
|
||||
class CryptoSessionMetricsTest : public testing::Test {
|
||||
class CryptoSessionMetricsTest : public WvCdmTestBase {
|
||||
protected:
|
||||
uint32_t FindKeyboxSystemID() {
|
||||
OEMCryptoResult sts;
|
||||
@@ -280,11 +282,12 @@ class CryptoSessionMetricsTest : public testing::Test {
|
||||
|
||||
TEST_F(CryptoSessionMetricsTest, OpenSessionValidMetrics) {
|
||||
metrics::CryptoMetrics crypto_metrics;
|
||||
CryptoSession session(&crypto_metrics);
|
||||
session.Open(wvcdm::kLevelDefault);
|
||||
scoped_ptr<CryptoSession> session(
|
||||
CryptoSession::MakeCryptoSession(&crypto_metrics));
|
||||
session->Open(wvcdm::kLevelDefault);
|
||||
// Exercise a method that will touch a metric.
|
||||
CdmUsageSupportType usage_type;
|
||||
ASSERT_EQ(NO_ERROR, session.GetUsageSupportType(&usage_type));
|
||||
ASSERT_EQ(NO_ERROR, session->GetUsageSupportType(&usage_type));
|
||||
|
||||
drm_metrics::WvCdmMetrics::CryptoMetrics metrics_proto;
|
||||
crypto_metrics.Serialize(&metrics_proto);
|
||||
@@ -305,7 +308,7 @@ TEST_F(CryptoSessionMetricsTest, OpenSessionValidMetrics) {
|
||||
metrics_proto.oemcrypto_usage_table_support().int_value());
|
||||
|
||||
// Validate metrics that differ based on provisioning type.
|
||||
CdmClientTokenType token_type = session.GetPreProvisionTokenType();
|
||||
CdmClientTokenType token_type = session->GetPreProvisionTokenType();
|
||||
|
||||
if (token_type == kClientTokenKeybox) {
|
||||
uint32_t system_id = FindKeyboxSystemID();
|
||||
@@ -337,18 +340,19 @@ TEST_F(CryptoSessionMetricsTest, OpenSessionValidMetrics) {
|
||||
|
||||
TEST_F(CryptoSessionMetricsTest, GetProvisioningTokenValidMetrics) {
|
||||
metrics::CryptoMetrics crypto_metrics;
|
||||
CryptoSession session(&crypto_metrics);
|
||||
scoped_ptr<CryptoSession> session(
|
||||
CryptoSession::MakeCryptoSession(&crypto_metrics));
|
||||
|
||||
ASSERT_EQ(NO_ERROR, session.Open(wvcdm::kLevelDefault));
|
||||
ASSERT_EQ(NO_ERROR, session->Open(wvcdm::kLevelDefault));
|
||||
|
||||
CdmClientTokenType token_type = session.GetPreProvisionTokenType();
|
||||
CdmClientTokenType token_type = session->GetPreProvisionTokenType();
|
||||
LOGI("token_type: %d", token_type);
|
||||
|
||||
// DRM Certificate provisioning method does not support a provisioning
|
||||
// token. Otherwise, we should be able to fetch the token.
|
||||
std::string token;
|
||||
if (token_type != kClientTokenDrmCert) {
|
||||
ASSERT_TRUE(session.GetProvisioningToken(&token));
|
||||
ASSERT_TRUE(session->GetProvisioningToken(&token));
|
||||
}
|
||||
|
||||
drm_metrics::WvCdmMetrics::CryptoMetrics metrics_proto;
|
||||
|
||||
Reference in New Issue
Block a user