#include "storage/browser/blob/blob_impl.h"
#include <limits>
#include <memory>
#include <string>
#include <utility>
#include "base/containers/span.h"
#include "base/functional/bind.h"
#include "base/memory/raw_ptr.h"
#include "base/run_loop.h"
#include "base/test/task_environment.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "mojo/public/cpp/system/data_pipe_drainer.h"
#include "net/base/net_errors.h"
#include "storage/browser/blob/blob_data_builder.h"
#include "storage/browser/blob/blob_data_handle.h"
#include "storage/browser/blob/blob_storage_context.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace storage {
namespace {
class DataPipeReader : public mojo::DataPipeDrainer::Client { … };
class MockBlobReaderClient : public blink::mojom::BlobReaderClient { … };
}
class BlobImplTest : public testing::Test { … };
TEST_F(BlobImplTest, GetInternalUUID) { … }
TEST_F(BlobImplTest, CloneAndLifetime) { … }
TEST_F(BlobImplTest, ReadAll) { … }
TEST_F(BlobImplTest, ReadAll_WithoutClient) { … }
TEST_F(BlobImplTest, ReadAll_BrokenBlob) { … }
TEST_F(BlobImplTest, ReadRange) { … }
TEST_F(BlobImplTest, ReadRange_WithoutClient) { … }
TEST_F(BlobImplTest, ReadRange_TooLargeLength) { … }
TEST_F(BlobImplTest, ReadRange_UnboundedLength) { … }
TEST_F(BlobImplTest, ReadRange_BrokenBlob) { … }
TEST_F(BlobImplTest, ReadRange_InvalidRange) { … }
}