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

Side by Side Diff: gpu/command_buffer/service/gpu_tracer_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 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 <map> 5 #include <map>
6 #include <set> 6 #include <set>
7 7
8 #include "gpu/command_buffer/service/gpu_service_test.h"
9 #include "gpu/command_buffer/service/gpu_tracer.h" 8 #include "gpu/command_buffer/service/gpu_tracer.h"
10 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
11 #include "ui/gl/gl_mock.h" 10 #include "ui/gl/gl_mock.h"
12 11
13 namespace gpu { 12 namespace gpu {
14 namespace gles2 { 13 namespace gles2 {
15 14
15 using ::gfx::MockGLInterface;
16 using ::testing::InvokeWithoutArgs; 16 using ::testing::InvokeWithoutArgs;
17 using ::testing::Return; 17 using ::testing::Return;
18 using ::testing::ReturnRef; 18 using ::testing::ReturnRef;
19 using ::testing::ReturnPointee; 19 using ::testing::ReturnPointee;
20 using ::testing::NotNull; 20 using ::testing::NotNull;
21 using ::testing::ElementsAreArray; 21 using ::testing::ElementsAreArray;
22 using ::testing::ElementsAre; 22 using ::testing::ElementsAre;
23 using ::testing::SetArrayArgument; 23 using ::testing::SetArrayArgument;
24 using ::testing::AtLeast; 24 using ::testing::AtLeast;
25 using ::testing::SetArgPointee; 25 using ::testing::SetArgPointee;
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 } 102 }
103 } 103 }
104 104
105 protected: 105 protected:
106 GLint64 current_time_; 106 GLint64 current_time_;
107 GLuint next_query_id_; 107 GLuint next_query_id_;
108 std::set<GLuint> alloced_queries_; 108 std::set<GLuint> alloced_queries_;
109 std::map<GLuint, GLint64> query_timestamp_; 109 std::map<GLuint, GLint64> query_timestamp_;
110 }; 110 };
111 111
112 class GpuTracerTest : public GpuServiceTest { 112 class GpuTracerTest : public testing::Test {
113 public: 113 public:
114 GpuTracerTest() {} 114 GpuTracerTest() {}
115 115
116 /////////////////////////////////////////////////////////////////////////// 116 ///////////////////////////////////////////////////////////////////////////
117 117
118 protected: 118 protected:
119 virtual void SetUp() { 119 virtual void SetUp() {
120 GpuServiceTest::SetUp(); 120 gl_.reset(new ::testing::StrictMock< ::gfx::MockGLInterface>());
121 ::gfx::MockGLInterface::SetGLInterface(gl_.get());
121 gl_fake_queries_.Reset(); 122 gl_fake_queries_.Reset();
122 } 123 }
123 124
124 virtual void TearDown() { 125 virtual void TearDown() {
126 ::gfx::MockGLInterface::SetGLInterface(NULL);
125 gl_.reset(); 127 gl_.reset();
126 gl_fake_queries_.Reset(); 128 gl_fake_queries_.Reset();
127 GpuServiceTest::TearDown();
128 } 129 }
129 130
130 void SetupTimerQueryMocks() { 131 void SetupTimerQueryMocks() {
131 // Delegate query APIs used by GLARBTimerTrace to a GlFakeQueries 132 // Delegate query APIs used by GLARBTimerTrace to a GlFakeQueries
132 EXPECT_CALL(*gl_, GenQueries(_, NotNull())).Times(AtLeast(1)).WillOnce( 133 EXPECT_CALL(*gl_, GenQueries(_, NotNull())).Times(AtLeast(1)).WillOnce(
133 Invoke(&gl_fake_queries_, &GlFakeQueries::GenQueries)); 134 Invoke(&gl_fake_queries_, &GlFakeQueries::GenQueries));
134 135
135 EXPECT_CALL(*gl_, GetQueryObjectiv(_, GL_QUERY_RESULT_AVAILABLE, NotNull())) 136 EXPECT_CALL(*gl_, GetQueryObjectiv(_, GL_QUERY_RESULT_AVAILABLE, NotNull()))
136 .Times(AtLeast(2)) 137 .Times(AtLeast(2))
137 .WillRepeatedly( 138 .WillRepeatedly(
138 Invoke(&gl_fake_queries_, &GlFakeQueries::GetQueryObjectiv)); 139 Invoke(&gl_fake_queries_, &GlFakeQueries::GetQueryObjectiv));
139 140
140 EXPECT_CALL(*gl_, QueryCounter(_, GL_TIMESTAMP)) 141 EXPECT_CALL(*gl_, QueryCounter(_, GL_TIMESTAMP))
141 .Times(AtLeast(2)) 142 .Times(AtLeast(2))
142 .WillRepeatedly( 143 .WillRepeatedly(
143 Invoke(&gl_fake_queries_, &GlFakeQueries::QueryCounter)); 144 Invoke(&gl_fake_queries_, &GlFakeQueries::QueryCounter));
144 145
145 EXPECT_CALL(*gl_, GetQueryObjectui64v(_, GL_QUERY_RESULT, NotNull())) 146 EXPECT_CALL(*gl_, GetQueryObjectui64v(_, GL_QUERY_RESULT, NotNull()))
146 .Times(AtLeast(2)) 147 .Times(AtLeast(2))
147 .WillRepeatedly( 148 .WillRepeatedly(
148 Invoke(&gl_fake_queries_, &GlFakeQueries::GetQueryObjectui64v)); 149 Invoke(&gl_fake_queries_, &GlFakeQueries::GetQueryObjectui64v));
149 150
150 EXPECT_CALL(*gl_, DeleteQueries(2, NotNull())) 151 EXPECT_CALL(*gl_, DeleteQueries(2, NotNull()))
151 .Times(AtLeast(1)) 152 .Times(AtLeast(1))
152 .WillRepeatedly( 153 .WillRepeatedly(
153 Invoke(&gl_fake_queries_, &GlFakeQueries::DeleteQueries)); 154 Invoke(&gl_fake_queries_, &GlFakeQueries::DeleteQueries));
154 } 155 }
155 156
157 scoped_ptr< ::testing::StrictMock< ::gfx::MockGLInterface> > gl_;
156 GlFakeQueries gl_fake_queries_; 158 GlFakeQueries gl_fake_queries_;
157 }; 159 };
158 160
159 TEST_F(GpuTracerTest, GLARBTimerTrace) { 161 TEST_F(GpuTracerTest, GLARBTimerTrace) {
160 // Test basic timer query functionality 162 // Test basic timer query functionality
161 { 163 {
162 MockOutputter* outputter = new MockOutputter(); 164 MockOutputter* outputter = new MockOutputter();
163 scoped_refptr<Outputter> outputter_ref = outputter; 165 scoped_refptr<Outputter> outputter_ref = outputter;
164 166
165 SetupTimerQueryMocks(); 167 SetupTimerQueryMocks();
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 gl_fake_queries_.SetCurrentGLTime(end_timestamp); 202 gl_fake_queries_.SetCurrentGLTime(end_timestamp);
201 EXPECT_TRUE(trace->IsAvailable()); 203 EXPECT_TRUE(trace->IsAvailable());
202 204
203 // Proces should output expected Trace results to MockOutputter 205 // Proces should output expected Trace results to MockOutputter
204 trace->Process(); 206 trace->Process();
205 } 207 }
206 } 208 }
207 209
208 } // namespace gles2 210 } // namespace gles2
209 } // namespace gpu 211 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/gpu_service_test.cc ('k') | gpu/command_buffer/service/mailbox_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698