Files
ce_cdm/core/test/test_printers.cpp
John "Juce" Bruce b2c35151ad Source release 18.1.0
2023-06-23 15:45:08 -07:00

82 lines
2.1 KiB
C++

// Copyright 2018 Google LLC. All Rights Reserved. This file and proprietary
// source code may only be used and distributed under the Widevine License
// Agreement.
// This file adds some print methods so that when unit tests fail, the
// will print the name of an enumeration instead of the numeric value.
#include "test_printers.h"
namespace wvcdm {
void PrintTo(CdmResponseEnum value, ::std::ostream* os) {
*os << CdmResponseEnumToString(value);
}
void PrintTo(const CdmResponseType& value, ::std::ostream* os) {
*os << value.ToString();
}
void PrintTo(const enum CdmLicenseType& value, ::std::ostream* os) {
switch (value) {
case kLicenseTypeOffline:
*os << "kLicenseTypeOffline";
break;
case kLicenseTypeStreaming:
*os << "kLicenseTypeStreaming";
break;
case kLicenseTypeRelease:
*os << "kLicenseTypeRelease";
break;
default:
*os << "Unknown CdmLicenseType";
break;
}
}
void PrintTo(const enum CdmSecurityLevel& value, ::std::ostream* os) {
switch (value) {
case kSecurityLevelUninitialized:
*os << "kSecurityLevelUninitialized";
break;
case kSecurityLevelL1:
*os << "kSecurityLevelL1";
break;
case kSecurityLevelL2:
*os << "kSecurityLevelL2";
break;
case kSecurityLevelL3:
*os << "kSecurityLevelL3";
break;
case kSecurityLevelUnknown:
*os << "kSecurityLevelUnknown";
break;
default:
*os << "Unknown CdmSecurityLevel";
break;
}
}
void PrintTo(const enum CdmCertificateType& value, ::std::ostream* os) {
switch (value) {
case kCertificateWidevine:
*os << "kCertificateWidevine";
break;
case kCertificateX509:
*os << "kCertificateX509";
break;
default:
*os << "Unknown CdmCertificateType";
break;
}
}
void PrintTo(const enum OEMCryptoResult& value, ::std::ostream* os) {
*os << OemCryptoResultToString(value);
}
namespace okp {
void PrintTo(const SystemState& state, std::ostream* os) {
*os << SystemStateToString(state);
}
} // namespace okp
} // namespace wvcdm