15 #include <gtest/gtest.h> 
   20 #include "../test/test_util.h" 
   22 #if defined(OPENSSL_THREADS) 
   29   static const uint8_t kData[4] = {1, 2, 3, 4};
 
   30   bssl::UniquePtr<CRYPTO_BUFFER> 
buf(
 
   38   bssl::UniquePtr<CRYPTO_BUFFER> 
buf2 = bssl::UpRef(
buf);
 
   40   bssl::UniquePtr<CRYPTO_BUFFER> buf_static(
 
   47   bssl::UniquePtr<CRYPTO_BUFFER> buf_static2 = bssl::UpRef(buf_static);
 
   57   bssl::UniquePtr<CRYPTO_BUFFER> buf_static(
 
   70   bssl::UniquePtr<CRYPTO_BUFFER> 
buf(
 
   76   bssl::UniquePtr<CRYPTO_BUFFER> 
buf2(
 
   82   EXPECT_EQ(
buf.get(), 
buf2.get()) << 
"CRYPTO_BUFFER_POOL did not dedup data.";
 
   86   bssl::UniquePtr<CRYPTO_BUFFER> buf3(
 
  105   bssl::UniquePtr<CRYPTO_BUFFER> buf4(
 
  123   bssl::UniquePtr<CRYPTO_BUFFER> buf7(
 
  128 #if defined(OPENSSL_THREADS) 
  129 TEST(PoolTest, Threads) {
 
  134   static const uint8_t kData[4] = {1, 2, 3, 4};
 
  136   bssl::UniquePtr<CRYPTO_BUFFER> 
buf, 
buf2, buf3;
 
  152   EXPECT_EQ(
buf.get(), 
buf2.get()) << 
"CRYPTO_BUFFER_POOL did not dedup data.";
 
  154       << 
"CRYPTO_BUFFER_POOL incorrectly deduped data.";
 
  163     bssl::UniquePtr<CRYPTO_BUFFER> buf_ref;
 
  179       std::this_thread::sleep_for(std::chrono::milliseconds(1));
 
  193     std::this_thread::sleep_for(std::chrono::milliseconds(1));