chromium/components/sync/engine/nigori/cross_user_sharing_public_private_key_pair_unittest.cc

// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "components/sync/engine/nigori/cross_user_sharing_public_private_key_pair.h"

#include <algorithm>
#include <vector>

#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/boringssl/src/include/openssl/curve25519.h"

namespace syncer {
namespace {

TEST(CrossUserSharingPublicPrivateKeyPairTest,
     GenerateNewKeyPairShouldAlwaysSucceed) {}

TEST(CrossUserSharingPublicPrivateKeyPairTest,
     GenerateNewKeyPairShouldGenerateDifferentKeys) {}

TEST(CrossUserSharingPublicPrivateKeyPairTest,
     GenerateNewKeyPairShouldGenerateDifferentPublicPrivateParts) {}

TEST(CrossUserSharingPublicPrivateKeyPairTest,
     GeneratedPublicKeyShouldMatchX25519Derivation) {}

TEST(CrossUserSharingPublicPrivateKeyPairTest, CreateByImportShouldSucceed) {}

TEST(CrossUserSharingPublicPrivateKeyPairTest,
     CreateByImportShouldFailOnShorterKey) {}

TEST(CrossUserSharingPublicPrivateKeyPairTest,
     CreateByImportShouldFailOnLongerKey) {}

TEST(CrossUserSharingPublicPrivateKeyPairTest, ShouldEncryptAndDecrypt) {}

// Ciphertext is too short to split into enc|ciphertext.
TEST(CrossUserSharingPublicPrivateKeyPairTest,
     ShouldReturnEmptyOnDecryptingShortCipherText) {}

// Encrypt for bad peer key (low-order X25519 points).
TEST(CrossUserSharingPublicPrivateKeyPairTest,
     ShouldReturnEmptyOnEncryptingForBadPeerKey) {}

// Decrypt for bad peer key (low-order X25519 points).
TEST(CrossUserSharingPublicPrivateKeyPairTest,
     ShouldReturnEmptyOnDecryptingForBadPeerKey) {}

// Decrypt corrupted ciphertext.
TEST(CrossUserSharingPublicPrivateKeyPairTest,
     ShouldReturnEmptyOnDecryptingCorruptedCipherText) {}

}  // namespace
}  // namespace syncer