Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(149)

Side by Side Diff: gpu/command_buffer/common/activity_flags_unittest.cc

Issue 2744363002: Clear shader disk cache after glProgramBinary failure. (Closed)
Patch Set: Fix dependency issues. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright (c) 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "gpu/command_buffer/common/activity_flags.h"
6
7 #include "testing/gtest/include/gtest/gtest.h"
8
9 namespace gpu {
10
11 TEST(ActivityFlagsTest, BasicUsage) {
12 // Create the host activity flags.
13 GpuProcessHostActivityFlags host_flags;
14 EXPECT_FALSE(
15 host_flags.IsFlagSet(ActivityFlagsBase::FLAG_LOADING_PROGRAM_BINARY));
16
17 // Create the service activity flags from host memory.
18 GpuProcessActivityFlags::InitializeInstance(host_flags.CloneHandle());
19 auto* service_flags = GpuProcessActivityFlags::GetInstance();
20
21 // Ensure we can set and re-set flags.
22 service_flags->SetFlag(ActivityFlagsBase::FLAG_LOADING_PROGRAM_BINARY);
23 EXPECT_TRUE(
24 host_flags.IsFlagSet(ActivityFlagsBase::FLAG_LOADING_PROGRAM_BINARY));
25 service_flags->UnsetFlag(ActivityFlagsBase::FLAG_LOADING_PROGRAM_BINARY);
26 EXPECT_FALSE(
27 host_flags.IsFlagSet(ActivityFlagsBase::FLAG_LOADING_PROGRAM_BINARY));
28 }
29
30 TEST(ActivityFlagsTest, NotInitialized) {
31 // Get the service activity flags without initializing it.
32 auto* service_flags = GpuProcessActivityFlags::GetInstance();
33
34 // Set/Unset should not crash.
35 service_flags->SetFlag(ActivityFlagsBase::FLAG_LOADING_PROGRAM_BINARY);
36 service_flags->UnsetFlag(ActivityFlagsBase::FLAG_LOADING_PROGRAM_BINARY);
37
38 // Initialize should also not crash with a null handle.
39 GpuProcessActivityFlags::InitializeInstance(mojo::ScopedSharedBufferHandle());
40 }
41
42 } // namespace gpu
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698