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

Side by Side Diff: gpu/command_buffer/service/query_manager_unittest.cc

Issue 331293005: Revert of gpu: Add base class for gpu service tests (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "gpu/command_buffer/service/query_manager.h" 5 #include "gpu/command_buffer/service/query_manager.h"
6 #include "gpu/command_buffer/common/gles2_cmd_format.h" 6 #include "gpu/command_buffer/common/gles2_cmd_format.h"
7 #include "gpu/command_buffer/service/cmd_buffer_engine.h" 7 #include "gpu/command_buffer/service/cmd_buffer_engine.h"
8 #include "gpu/command_buffer/service/error_state_mock.h" 8 #include "gpu/command_buffer/service/error_state_mock.h"
9 #include "gpu/command_buffer/service/feature_info.h"
10 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" 9 #include "gpu/command_buffer/service/gles2_cmd_decoder.h"
11 #include "gpu/command_buffer/service/gles2_cmd_decoder_mock.h" 10 #include "gpu/command_buffer/service/gles2_cmd_decoder_mock.h"
12 #include "gpu/command_buffer/service/gpu_service_test.h" 11 #include "gpu/command_buffer/service/feature_info.h"
13 #include "gpu/command_buffer/service/test_helper.h" 12 #include "gpu/command_buffer/service/test_helper.h"
14 #include "testing/gtest/include/gtest/gtest.h" 13 #include "testing/gtest/include/gtest/gtest.h"
15 #include "ui/gl/gl_mock.h" 14 #include "ui/gl/gl_mock.h"
16 15
17 using ::testing::_; 16 using ::testing::_;
18 using ::testing::InSequence; 17 using ::testing::InSequence;
19 using ::testing::Return; 18 using ::testing::Return;
20 using ::testing::SetArgumentPointee; 19 using ::testing::SetArgumentPointee;
21 20
22 namespace gpu { 21 namespace gpu {
23 namespace gles2 { 22 namespace gles2 {
24 23
25 class QueryManagerTest : public GpuServiceTest { 24 class QueryManagerTest : public testing::Test {
26 public: 25 public:
27 static const int32 kSharedMemoryId = 401; 26 static const int32 kSharedMemoryId = 401;
28 static const size_t kSharedBufferSize = 2048; 27 static const size_t kSharedBufferSize = 2048;
29 static const uint32 kSharedMemoryOffset = 132; 28 static const uint32 kSharedMemoryOffset = 132;
30 static const int32 kInvalidSharedMemoryId = 402; 29 static const int32 kInvalidSharedMemoryId = 402;
31 static const uint32 kInvalidSharedMemoryOffset = kSharedBufferSize + 1; 30 static const uint32 kInvalidSharedMemoryOffset = kSharedBufferSize + 1;
32 static const uint32 kInitialResult = 0xBDBDBDBDu; 31 static const uint32 kInitialResult = 0xBDBDBDBDu;
33 static const uint8 kInitialMemoryValue = 0xBDu; 32 static const uint8 kInitialMemoryValue = 0xBDu;
34 33
35 QueryManagerTest() { 34 QueryManagerTest() {
36 } 35 }
37 virtual ~QueryManagerTest() { 36 virtual ~QueryManagerTest() {
38 } 37 }
39 38
40 protected: 39 protected:
41 virtual void SetUp() { 40 virtual void SetUp() {
42 GpuServiceTest::SetUp(); 41 gl_.reset(new ::testing::StrictMock< ::gfx::MockGLInterface>());
42 ::gfx::MockGLInterface::SetGLInterface(gl_.get());
43 engine_.reset(new MockCommandBufferEngine()); 43 engine_.reset(new MockCommandBufferEngine());
44 decoder_.reset(new MockGLES2Decoder()); 44 decoder_.reset(new MockGLES2Decoder());
45 decoder_->set_engine(engine_.get()); 45 decoder_->set_engine(engine_.get());
46 TestHelper::SetupFeatureInfoInitExpectations( 46 TestHelper::SetupFeatureInfoInitExpectations(
47 gl_.get(), 47 gl_.get(),
48 "GL_EXT_occlusion_query_boolean"); 48 "GL_EXT_occlusion_query_boolean");
49 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo()); 49 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo());
50 feature_info->Initialize(); 50 feature_info->Initialize();
51 manager_.reset(new QueryManager(decoder_.get(), feature_info.get())); 51 manager_.reset(new QueryManager(decoder_.get(), feature_info.get()));
52 } 52 }
53 53
54 virtual void TearDown() { 54 virtual void TearDown() {
55 decoder_.reset(); 55 decoder_.reset();
56 manager_->Destroy(false); 56 manager_->Destroy(false);
57 manager_.reset(); 57 manager_.reset();
58 engine_.reset(); 58 engine_.reset();
59 GpuServiceTest::TearDown(); 59 ::gfx::MockGLInterface::SetGLInterface(NULL);
60 gl_.reset();
60 } 61 }
61 62
62 QueryManager::Query* CreateQuery( 63 QueryManager::Query* CreateQuery(
63 GLenum target, GLuint client_id, int32 shm_id, uint32 shm_offset, 64 GLenum target, GLuint client_id, int32 shm_id, uint32 shm_offset,
64 GLuint service_id) { 65 GLuint service_id) {
65 EXPECT_CALL(*gl_, GenQueriesARB(1, _)) 66 EXPECT_CALL(*gl_, GenQueriesARB(1, _))
66 .WillOnce(SetArgumentPointee<1>(service_id)) 67 .WillOnce(SetArgumentPointee<1>(service_id))
67 .RetiresOnSaturation(); 68 .RetiresOnSaturation();
68 return manager_->CreateQuery(target, client_id, shm_id, shm_offset); 69 return manager_->CreateQuery(target, client_id, shm_id, shm_offset);
69 } 70 }
70 71
71 void QueueQuery(QueryManager::Query* query, 72 void QueueQuery(QueryManager::Query* query,
72 GLuint service_id, 73 GLuint service_id,
73 base::subtle::Atomic32 submit_count) { 74 base::subtle::Atomic32 submit_count) {
74 EXPECT_CALL(*gl_, BeginQueryARB(query->target(), service_id)) 75 EXPECT_CALL(*gl_, BeginQueryARB(query->target(), service_id))
75 .Times(1) 76 .Times(1)
76 .RetiresOnSaturation(); 77 .RetiresOnSaturation();
77 EXPECT_CALL(*gl_, EndQueryARB(query->target())) 78 EXPECT_CALL(*gl_, EndQueryARB(query->target()))
78 .Times(1) 79 .Times(1)
79 .RetiresOnSaturation(); 80 .RetiresOnSaturation();
80 EXPECT_TRUE(manager_->BeginQuery(query)); 81 EXPECT_TRUE(manager_->BeginQuery(query));
81 EXPECT_TRUE(manager_->EndQuery(query, submit_count)); 82 EXPECT_TRUE(manager_->EndQuery(query, submit_count));
82 } 83 }
83 84
85 // Use StrictMock to make 100% sure we know how GL will be called.
86 scoped_ptr< ::testing::StrictMock< ::gfx::MockGLInterface> > gl_;
84 scoped_ptr<MockGLES2Decoder> decoder_; 87 scoped_ptr<MockGLES2Decoder> decoder_;
85 scoped_ptr<QueryManager> manager_; 88 scoped_ptr<QueryManager> manager_;
86 89
87 private: 90 private:
88 class MockCommandBufferEngine : public CommandBufferEngine { 91 class MockCommandBufferEngine : public CommandBufferEngine {
89 public: 92 public:
90 MockCommandBufferEngine() { 93 MockCommandBufferEngine() {
91 scoped_ptr<base::SharedMemory> shared_memory(new base::SharedMemory()); 94 scoped_ptr<base::SharedMemory> shared_memory(new base::SharedMemory());
92 shared_memory->CreateAndMapAnonymous(kSharedBufferSize); 95 shared_memory->CreateAndMapAnonymous(kSharedBufferSize);
93 valid_buffer_ = 96 valid_buffer_ =
(...skipping 472 matching lines...) Expand 10 before | Expand all | Expand 10 after
566 569
567 EXPECT_EQ(static_cast<GLuint>(GL_INVALID_ENUM), sync->result); 570 EXPECT_EQ(static_cast<GLuint>(GL_INVALID_ENUM), sync->result);
568 571
569 manager->Destroy(false); 572 manager->Destroy(false);
570 } 573 }
571 574
572 } // namespace gles2 575 } // namespace gles2
573 } // namespace gpu 576 } // namespace gpu
574 577
575 578
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/program_manager_unittest.cc ('k') | gpu/command_buffer/service/renderbuffer_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698