| Index: net/quic/crypto/crypto_secret_boxer_test.cc
|
| diff --git a/net/quic/crypto/crypto_secret_boxer_test.cc b/net/quic/crypto/crypto_secret_boxer_test.cc
|
| deleted file mode 100644
|
| index 6d5cad15016aa42de8d377bb9a2f192785dabda7..0000000000000000000000000000000000000000
|
| --- a/net/quic/crypto/crypto_secret_boxer_test.cc
|
| +++ /dev/null
|
| @@ -1,81 +0,0 @@
|
| -// Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "net/quic/crypto/crypto_secret_boxer.h"
|
| -
|
| -#include <memory>
|
| -
|
| -#include "net/quic/crypto/quic_random.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -using base::StringPiece;
|
| -using std::string;
|
| -
|
| -namespace net {
|
| -namespace test {
|
| -
|
| -TEST(CryptoSecretBoxerTest, BoxAndUnbox) {
|
| - StringPiece message("hello world");
|
| -
|
| - CryptoSecretBoxer boxer;
|
| - boxer.SetKeys({string(CryptoSecretBoxer::GetKeySize(), 0x11)});
|
| -
|
| - const string box = boxer.Box(QuicRandom::GetInstance(), message);
|
| -
|
| - string storage;
|
| - StringPiece result;
|
| - EXPECT_TRUE(boxer.Unbox(box, &storage, &result));
|
| - EXPECT_EQ(result, message);
|
| -
|
| - EXPECT_FALSE(boxer.Unbox(string(1, 'X') + box, &storage, &result));
|
| - EXPECT_FALSE(boxer.Unbox(box.substr(1, string::npos), &storage, &result));
|
| - EXPECT_FALSE(boxer.Unbox(string(), &storage, &result));
|
| - EXPECT_FALSE(
|
| - boxer.Unbox(string(1, box[0] ^ 0x80) + box.substr(1, string::npos),
|
| - &storage, &result));
|
| -}
|
| -
|
| -// Helper function to test whether one boxer can decode the output of another.
|
| -static bool CanDecode(const CryptoSecretBoxer& decoder,
|
| - const CryptoSecretBoxer& encoder) {
|
| - StringPiece message("hello world");
|
| - const string boxed = encoder.Box(QuicRandom::GetInstance(), message);
|
| - string storage;
|
| - StringPiece result;
|
| - bool ok = decoder.Unbox(boxed, &storage, &result);
|
| - if (ok) {
|
| - EXPECT_EQ(result, message);
|
| - }
|
| - return ok;
|
| -}
|
| -
|
| -TEST(CryptoSecretBoxerTest, MultipleKeys) {
|
| - string key_11(CryptoSecretBoxer::GetKeySize(), 0x11);
|
| - string key_12(CryptoSecretBoxer::GetKeySize(), 0x12);
|
| -
|
| - CryptoSecretBoxer boxer_11, boxer_12, boxer;
|
| - boxer_11.SetKeys({key_11});
|
| - boxer_12.SetKeys({key_12});
|
| - boxer.SetKeys({key_12, key_11});
|
| -
|
| - // Neither single-key boxer can decode the other's tokens.
|
| - EXPECT_FALSE(CanDecode(boxer_11, boxer_12));
|
| - EXPECT_FALSE(CanDecode(boxer_12, boxer_11));
|
| -
|
| - // |boxer| encodes with the first key, which is key_12.
|
| - EXPECT_TRUE(CanDecode(boxer_12, boxer));
|
| - EXPECT_FALSE(CanDecode(boxer_11, boxer));
|
| -
|
| - // The boxer with both keys can decode tokens from either single-key boxer.
|
| - EXPECT_TRUE(CanDecode(boxer, boxer_11));
|
| - EXPECT_TRUE(CanDecode(boxer, boxer_12));
|
| -
|
| - // After we flush key_11 from |boxer|, it can no longer decode tokens from
|
| - // |boxer_11|.
|
| - boxer.SetKeys({key_12});
|
| - EXPECT_FALSE(CanDecode(boxer, boxer_11));
|
| -}
|
| -
|
| -} // namespace test
|
| -} // namespace net
|
|
|