Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(815)

Unified Diff: media/cdm/json_web_key_unittest.cc

Issue 1132223002: Sanitize data before providing it to the CDM (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: windows change Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/cdm/json_web_key.cc ('k') | media/cdm/key_system_names.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/cdm/json_web_key_unittest.cc
diff --git a/media/cdm/json_web_key_unittest.cc b/media/cdm/json_web_key_unittest.cc
index 82b3bb0827d402d9845267a4004728a527d4d13a..90d19e30f20142298bb2a05851f7e9fc719c7f27 100644
--- a/media/cdm/json_web_key_unittest.cc
+++ b/media/cdm/json_web_key_unittest.cc
@@ -71,6 +71,14 @@ class JSONWebKeyTest : public testing::Test {
expected_key + expected_key_length);
EXPECT_EQ(key_result, key);
}
+
+ KeyIdAndKeyPair MakeKeyIdAndKeyPair(const uint8* key,
+ int key_length,
+ const uint8* key_id,
+ int key_id_length) {
+ return std::make_pair(std::string(key_id, key_id + key_id_length),
+ std::string(key, key + key_length));
+ }
};
TEST_F(JSONWebKeyTest, GenerateJWKSet) {
@@ -92,6 +100,29 @@ TEST_F(JSONWebKeyTest, GenerateJWKSet) {
"{\"keys\":[{\"k\":\"AQIDBAUGBwgJCgsMDQ4PEA\",\"kid\":"
"\"AQIDBAUGBwgJCgsMDQ4PEA\",\"kty\":\"oct\"}]}",
GenerateJWKSet(data3, arraysize(data3), data3, arraysize(data3)));
+
+ KeyIdAndKeyPairs keys;
+ keys.push_back(
+ MakeKeyIdAndKeyPair(data1, arraysize(data1), data1, arraysize(data1)));
+ EXPECT_EQ(
+ "{\"keys\":[{\"k\":\"AQI\",\"kid\":\"AQI\",\"kty\":\"oct\"}],\"type\":"
+ "\"temporary\"}",
+ GenerateJWKSet(keys, MediaKeys::TEMPORARY_SESSION));
+ keys.push_back(
+ MakeKeyIdAndKeyPair(data2, arraysize(data2), data2, arraysize(data2)));
+ EXPECT_EQ(
+ "{\"keys\":[{\"k\":\"AQI\",\"kid\":\"AQI\",\"kty\":\"oct\"},{\"k\":"
+ "\"AQIDBA\",\"kid\":\"AQIDBA\",\"kty\":\"oct\"}],\"type\":\"persistent-"
+ "license\"}",
+ GenerateJWKSet(keys, MediaKeys::PERSISTENT_LICENSE_SESSION));
+ keys.push_back(
+ MakeKeyIdAndKeyPair(data3, arraysize(data3), data3, arraysize(data3)));
+ EXPECT_EQ(
+ "{\"keys\":[{\"k\":\"AQI\",\"kid\":\"AQI\",\"kty\":\"oct\"},{\"k\":"
+ "\"AQIDBA\",\"kid\":\"AQIDBA\",\"kty\":\"oct\"},{\"k\":"
+ "\"AQIDBAUGBwgJCgsMDQ4PEA\",\"kid\":\"AQIDBAUGBwgJCgsMDQ4PEA\",\"kty\":"
+ "\"oct\"}],\"type\":\"persistent-release-message\"}",
+ GenerateJWKSet(keys, MediaKeys::PERSISTENT_RELEASE_MESSAGE_SESSION));
}
TEST_F(JSONWebKeyTest, ExtractValidJWKKeys) {
« no previous file with comments | « media/cdm/json_web_key.cc ('k') | media/cdm/key_system_names.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698