#include "quiche/oblivious_http/oblivious_http_client.h"
#include <stdint.h>
#include <memory>
#include <string>
#include <utility>
#include "absl/status/status.h"
#include "absl/status/statusor.h"
#include "absl/strings/escaping.h"
#include "absl/strings/string_view.h"
#include "quiche/common/platform/api/quiche_test.h"
#include "quiche/common/platform/api/quiche_thread.h"
namespace quiche {
std::string GetHpkePrivateKey() { … }
std::string GetHpkePublicKey() { … }
const ObliviousHttpHeaderKeyConfig GetOhttpKeyConfig(uint8_t key_id,
uint16_t kem_id,
uint16_t kdf_id,
uint16_t aead_id) { … }
bssl::UniquePtr<EVP_HPKE_KEY> ConstructHpkeKey(
absl::string_view hpke_key,
const ObliviousHttpHeaderKeyConfig& ohttp_key_config) { … }
TEST(ObliviousHttpClient, TestEncapsulate) { … }
TEST(ObliviousHttpClient, TestEncryptingMultipleRequestsWithSingleInstance) { … }
TEST(ObliviousHttpClient, TestInvalidHPKEKey) { … }
TEST(ObliviousHttpClient,
TestTwoSamePlaintextsWillGenerateDifferentEncryptedPayloads) { … }
TEST(ObliviousHttpClient, TestObliviousResponseHandling) { … }
TEST(ObliviousHttpClient,
DecryptResponseReceivedByTheClientUsingServersObliviousContext) { … }
TEST(ObliviousHttpClient, TestWithMultipleThreads) { … }
}