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

Side by Side Diff: cc/surfaces/surface_unittest.cc

Issue 2144733005: [WIP] cc: Plumb SurfaceId from clients Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Ensure only SurfaceFactoy and tests can update hierarchy Created 4 years, 5 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
« no previous file with comments | « cc/surfaces/surface_manager_unittest.cc ('k') | cc/surfaces/surfaces_pixeltest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/surfaces/surface.h" 5 #include "cc/surfaces/surface.h"
6 #include "cc/surfaces/surface_factory.h" 6 #include "cc/surfaces/surface_factory.h"
7 #include "cc/surfaces/surface_factory_client.h" 7 #include "cc/surfaces/surface_factory_client.h"
8 #include "cc/surfaces/surface_id_allocator.h" 8 #include "cc/surfaces/surface_id_allocator.h"
9 #include "cc/surfaces/surface_manager.h" 9 #include "cc/surfaces/surface_manager.h"
10 #include "cc/test/scheduler_test_common.h" 10 #include "cc/test/scheduler_test_common.h"
(...skipping 17 matching lines...) Expand all
28 28
29 BeginFrameSource* begin_frame_source() { return begin_frame_source_; } 29 BeginFrameSource* begin_frame_source() { return begin_frame_source_; }
30 30
31 private: 31 private:
32 BeginFrameSource* begin_frame_source_; 32 BeginFrameSource* begin_frame_source_;
33 }; 33 };
34 34
35 TEST(SurfaceTest, SurfaceLifetime) { 35 TEST(SurfaceTest, SurfaceLifetime) {
36 SurfaceManager manager; 36 SurfaceManager manager;
37 FakeSurfaceFactoryClient surface_factory_client; 37 FakeSurfaceFactoryClient surface_factory_client;
38 SurfaceFactory factory(&manager, &surface_factory_client); 38 SurfaceFactory factory(kArbitraryClientId, &manager, &surface_factory_client);
39 39
40 SurfaceId surface_id(kArbitraryClientId, 6, 0); 40 SurfaceId surface_id(kArbitraryClientId, 6, 0);
41 { 41 {
42 factory.Create(surface_id); 42 factory.Create(surface_id);
43 EXPECT_TRUE(manager.GetSurfaceForId(surface_id)); 43 EXPECT_TRUE(manager.GetSurfaceForId(surface_id));
44 factory.Destroy(surface_id); 44 factory.Destroy(surface_id);
45 } 45 }
46 46
47 EXPECT_EQ(NULL, manager.GetSurfaceForId(surface_id)); 47 EXPECT_EQ(NULL, manager.GetSurfaceForId(surface_id));
48 } 48 }
49 49
50 TEST(SurfaceTest, SurfaceIds) { 50 TEST(SurfaceTest, SurfaceIds) {
51 uint32_t client_ids[] = {0u, 37u, ~0u}; 51 uint32_t client_ids[] = {0u, 37u, ~0u};
52 for (size_t i = 0; i < 3; ++i) { 52 for (size_t i = 0; i < 3; ++i) {
53 uint32_t client_id = client_ids[i]; 53 uint32_t client_id = client_ids[i];
54 SurfaceIdAllocator allocator(client_id); 54 SurfaceIdAllocator allocator(client_id);
55 SurfaceId id1 = allocator.GenerateId(); 55 SurfaceId id1 = allocator.GenerateId();
56 EXPECT_EQ(id1.client_id(), client_id); 56 EXPECT_EQ(id1.client_id(), client_id);
57 SurfaceId id2 = allocator.GenerateId(); 57 SurfaceId id2 = allocator.GenerateId();
58 EXPECT_EQ(id2.client_id(), client_id); 58 EXPECT_EQ(id2.client_id(), client_id);
59 EXPECT_NE(id1.local_id(), id2.local_id()); 59 EXPECT_NE(id1.local_id(), id2.local_id());
60 EXPECT_NE(id1.nonce(), id2.nonce()); 60 EXPECT_NE(id1.nonce(), id2.nonce());
61 } 61 }
62 } 62 }
63 63
64 } // namespace 64 } // namespace
65 } // namespace cc 65 } // namespace cc
OLDNEW
« no previous file with comments | « cc/surfaces/surface_manager_unittest.cc ('k') | cc/surfaces/surfaces_pixeltest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698