Refactor and cleanup codes. No functional changes.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Copyright 2016 Google Inc.
|
||||
// Copyright 2016 Google LLC.
|
||||
//
|
||||
// This software is licensed under the terms defined in the Widevine Master
|
||||
// License Agreement. For a copy of this agreement, please contact
|
||||
@@ -7,9 +7,8 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include "common/aes_cbc_util.h"
|
||||
|
||||
#include "gmock/gmock.h"
|
||||
#include "gtest/gtest.h"
|
||||
#include "testing/gmock.h"
|
||||
#include "testing/gunit.h"
|
||||
|
||||
namespace {
|
||||
|
||||
@@ -97,6 +96,31 @@ TEST(CryptoUtilTest, TestFailedEncrypt) {
|
||||
ASSERT_EQ(ciphertext.size(), 0);
|
||||
}
|
||||
|
||||
TEST(CryptoUtilTest, TestFailedEncryptNoPad) {
|
||||
std::string plaintext("0123456789abcdef");
|
||||
std::string key(kKey, kKey + sizeof(kKey));
|
||||
std::string iv(kIv, kIv + sizeof(kIv));
|
||||
|
||||
// Control.
|
||||
std::string ciphertext = EncryptAesCbcNoPad(key, iv, plaintext);
|
||||
ASSERT_EQ(plaintext.size(), ciphertext.size());
|
||||
|
||||
// Bogus key.
|
||||
std::string bogus_key("bogus");
|
||||
ciphertext = EncryptAesCbcNoPad(bogus_key, iv, plaintext);
|
||||
EXPECT_EQ(ciphertext.size(), 0);
|
||||
|
||||
// Bogus IV.
|
||||
std::string bogus_iv("bogus");
|
||||
ciphertext = EncryptAesCbcNoPad(key, bogus_iv, plaintext);
|
||||
EXPECT_EQ(ciphertext.size(), 0);
|
||||
|
||||
// Incorrectly-sized plaintext.
|
||||
std::string bad_plaintext("Foo");
|
||||
ciphertext = EncryptAesCbcNoPad(key, iv, bad_plaintext);
|
||||
EXPECT_EQ(ciphertext.size(), 0);
|
||||
}
|
||||
|
||||
TEST(CryptoUtilTest, TestFailedDecrypt) {
|
||||
// First, encrypt the data.
|
||||
std::string plain_text("Foo");
|
||||
|
||||
Reference in New Issue
Block a user