chromium/gpu/command_buffer/service/dawn_caching_interface_unittest.cc

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

#include "gpu/command_buffer/service/dawn_caching_interface.h"

#include <string>
#include <string_view>

#include "gpu/command_buffer/service/mocks.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"

namespace gpu::webgpu {
namespace {

StrictMock;

class DawnCachingInterfaceTest : public testing::Test {};

TEST_F(DawnCachingInterfaceTest, LoadNonexistentSize) {}

TEST_F(DawnCachingInterfaceTest, StoreThenLoadSameInterface) {}

TEST_F(DawnCachingInterfaceTest, StoreThenLoadSameHandle) {}

TEST_F(DawnCachingInterfaceTest, StoreDestroyThenLoadSameHandle) {}

// If the handle is released before a new cache is created, the new cache should
// use a new in-memory cache.
TEST_F(DawnCachingInterfaceTest, StoreReleaseThenLoad) {}

TEST_F(DawnCachingInterfaceTest, IncognitoCachesDoNotShare) {}

TEST_F(DawnCachingInterfaceTest, UnableToCreateBackend) {}

TEST_F(DawnCachingInterfaceTest, StoreTriggersHostSide) {}

TEST_F(DawnCachingInterfaceTest, TestMaxSizeEviction) {}

TEST_F(DawnCachingInterfaceTest, TestLruEviction) {}

// Entries that are too large for the size of the cache are not cached and do
// not cause any crashes. This is a regression test for dawn:2034.
TEST_F(DawnCachingInterfaceTest, TestVeryLargeEntrySize) {}

}  // namespace
}  // namespace gpu::webgpu