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

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

Issue 1859703002: convert //gpu to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase on master Created 4 years, 8 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
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 <stddef.h> 5 #include <stddef.h>
6 #include <stdint.h> 6 #include <stdint.h>
7 7
8 #include <memory>
9
8 #include "gpu/command_buffer/common/gles2_cmd_format.h" 10 #include "gpu/command_buffer/common/gles2_cmd_format.h"
9 #include "gpu/command_buffer/service/cmd_buffer_engine.h" 11 #include "gpu/command_buffer/service/cmd_buffer_engine.h"
10 #include "gpu/command_buffer/service/error_state_mock.h" 12 #include "gpu/command_buffer/service/error_state_mock.h"
11 #include "gpu/command_buffer/service/feature_info.h" 13 #include "gpu/command_buffer/service/feature_info.h"
12 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" 14 #include "gpu/command_buffer/service/gles2_cmd_decoder.h"
13 #include "gpu/command_buffer/service/gles2_cmd_decoder_mock.h" 15 #include "gpu/command_buffer/service/gles2_cmd_decoder_mock.h"
14 #include "gpu/command_buffer/service/gpu_service_test.h" 16 #include "gpu/command_buffer/service/gpu_service_test.h"
15 #include "gpu/command_buffer/service/query_manager.h" 17 #include "gpu/command_buffer/service/query_manager.h"
16 #include "gpu/command_buffer/service/test_helper.h" 18 #include "gpu/command_buffer/service/test_helper.h"
17 #include "testing/gtest/include/gtest/gtest.h" 19 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 EXPECT_CALL(*gl_, BeginQuery(query->target(), service_id)) 92 EXPECT_CALL(*gl_, BeginQuery(query->target(), service_id))
91 .Times(1) 93 .Times(1)
92 .RetiresOnSaturation(); 94 .RetiresOnSaturation();
93 EXPECT_CALL(*gl_, EndQuery(query->target())) 95 EXPECT_CALL(*gl_, EndQuery(query->target()))
94 .Times(1) 96 .Times(1)
95 .RetiresOnSaturation(); 97 .RetiresOnSaturation();
96 EXPECT_TRUE(manager_->BeginQuery(query)); 98 EXPECT_TRUE(manager_->BeginQuery(query));
97 EXPECT_TRUE(manager_->EndQuery(query, submit_count)); 99 EXPECT_TRUE(manager_->EndQuery(query, submit_count));
98 } 100 }
99 101
100 scoped_ptr<MockGLES2Decoder> decoder_; 102 std::unique_ptr<MockGLES2Decoder> decoder_;
101 scoped_ptr<QueryManager> manager_; 103 std::unique_ptr<QueryManager> manager_;
102 104
103 private: 105 private:
104 class MockCommandBufferEngine : public CommandBufferEngine { 106 class MockCommandBufferEngine : public CommandBufferEngine {
105 public: 107 public:
106 MockCommandBufferEngine() { 108 MockCommandBufferEngine() {
107 scoped_ptr<base::SharedMemory> shared_memory(new base::SharedMemory()); 109 std::unique_ptr<base::SharedMemory> shared_memory(
110 new base::SharedMemory());
108 shared_memory->CreateAndMapAnonymous(kSharedBufferSize); 111 shared_memory->CreateAndMapAnonymous(kSharedBufferSize);
109 valid_buffer_ = MakeBufferFromSharedMemory(std::move(shared_memory), 112 valid_buffer_ = MakeBufferFromSharedMemory(std::move(shared_memory),
110 kSharedBufferSize); 113 kSharedBufferSize);
111 114
112 scoped_ptr<base::SharedMemory> shared_memory2(new base::SharedMemory()); 115 std::unique_ptr<base::SharedMemory> shared_memory2(
116 new base::SharedMemory());
113 shared_memory2->CreateAndMapAnonymous(kSharedBufferSize); 117 shared_memory2->CreateAndMapAnonymous(kSharedBufferSize);
114 valid_buffer2_ = MakeBufferFromSharedMemory(std::move(shared_memory2), 118 valid_buffer2_ = MakeBufferFromSharedMemory(std::move(shared_memory2),
115 kSharedBufferSize); 119 kSharedBufferSize);
116 120
117 ClearSharedMemory(); 121 ClearSharedMemory();
118 } 122 }
119 123
120 ~MockCommandBufferEngine() override {} 124 ~MockCommandBufferEngine() override {}
121 125
122 scoped_refptr<gpu::Buffer> GetSharedMemoryBuffer(int32_t shm_id) override { 126 scoped_refptr<gpu::Buffer> GetSharedMemoryBuffer(int32_t shm_id) override {
(...skipping 27 matching lines...) Expand all
150 DCHECK(false); 154 DCHECK(false);
151 return 0; 155 return 0;
152 } 156 }
153 157
154 private: 158 private:
155 scoped_refptr<gpu::Buffer> valid_buffer_; 159 scoped_refptr<gpu::Buffer> valid_buffer_;
156 scoped_refptr<gpu::Buffer> valid_buffer2_; 160 scoped_refptr<gpu::Buffer> valid_buffer2_;
157 scoped_refptr<gpu::Buffer> invalid_buffer_; 161 scoped_refptr<gpu::Buffer> invalid_buffer_;
158 }; 162 };
159 163
160 scoped_ptr<MockCommandBufferEngine> engine_; 164 std::unique_ptr<MockCommandBufferEngine> engine_;
161 }; 165 };
162 166
163 class QueryManagerManualSetupTest : public QueryManagerTest { 167 class QueryManagerManualSetupTest : public QueryManagerTest {
164 protected: 168 protected:
165 void SetUp() override { 169 void SetUp() override {
166 // Let test setup manually. 170 // Let test setup manually.
167 } 171 }
168 }; 172 };
169 173
170 // GCC requires these declarations, but MSVC requires they not be present 174 // GCC requires these declarations, but MSVC requires they not be present
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
503 const GLuint kClient1Id = 1; 507 const GLuint kClient1Id = 1;
504 const GLuint kService1Id = 11; 508 const GLuint kService1Id = 11;
505 const GLenum kTarget = GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT; 509 const GLenum kTarget = GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT;
506 const base::subtle::Atomic32 kSubmitCount = 123; 510 const base::subtle::Atomic32 kSubmitCount = 123;
507 511
508 TestHelper::SetupFeatureInfoInitExpectations( 512 TestHelper::SetupFeatureInfoInitExpectations(
509 gl_.get(), 513 gl_.get(),
510 "GL_ARB_occlusion_query2"); 514 "GL_ARB_occlusion_query2");
511 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo()); 515 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo());
512 feature_info->InitializeForTesting(); 516 feature_info->InitializeForTesting();
513 scoped_ptr<QueryManager> manager( 517 std::unique_ptr<QueryManager> manager(
514 new QueryManager(decoder_.get(), feature_info.get())); 518 new QueryManager(decoder_.get(), feature_info.get()));
515 519
516 EXPECT_CALL(*gl_, GenQueries(1, _)) 520 EXPECT_CALL(*gl_, GenQueries(1, _))
517 .WillOnce(SetArgumentPointee<1>(kService1Id)) 521 .WillOnce(SetArgumentPointee<1>(kService1Id))
518 .RetiresOnSaturation(); 522 .RetiresOnSaturation();
519 QueryManager::Query* query = manager->CreateQuery( 523 QueryManager::Query* query = manager->CreateQuery(
520 kTarget, kClient1Id, kSharedMemoryId, kSharedMemoryOffset); 524 kTarget, kClient1Id, kSharedMemoryId, kSharedMemoryOffset);
521 ASSERT_TRUE(query != NULL); 525 ASSERT_TRUE(query != NULL);
522 526
523 EXPECT_CALL(*gl_, BeginQuery(GL_ANY_SAMPLES_PASSED_EXT, kService1Id)) 527 EXPECT_CALL(*gl_, BeginQuery(GL_ANY_SAMPLES_PASSED_EXT, kService1Id))
(...skipping 13 matching lines...) Expand all
537 const GLuint kClient1Id = 1; 541 const GLuint kClient1Id = 1;
538 const GLuint kService1Id = 11; 542 const GLuint kService1Id = 11;
539 const GLenum kTarget = GL_ANY_SAMPLES_PASSED_EXT; 543 const GLenum kTarget = GL_ANY_SAMPLES_PASSED_EXT;
540 const base::subtle::Atomic32 kSubmitCount = 123; 544 const base::subtle::Atomic32 kSubmitCount = 123;
541 545
542 TestHelper::SetupFeatureInfoInitExpectations( 546 TestHelper::SetupFeatureInfoInitExpectations(
543 gl_.get(), 547 gl_.get(),
544 "GL_ARB_occlusion_query"); 548 "GL_ARB_occlusion_query");
545 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo()); 549 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo());
546 feature_info->InitializeForTesting(); 550 feature_info->InitializeForTesting();
547 scoped_ptr<QueryManager> manager( 551 std::unique_ptr<QueryManager> manager(
548 new QueryManager(decoder_.get(), feature_info.get())); 552 new QueryManager(decoder_.get(), feature_info.get()));
549 553
550 EXPECT_CALL(*gl_, GenQueries(1, _)) 554 EXPECT_CALL(*gl_, GenQueries(1, _))
551 .WillOnce(SetArgumentPointee<1>(kService1Id)) 555 .WillOnce(SetArgumentPointee<1>(kService1Id))
552 .RetiresOnSaturation(); 556 .RetiresOnSaturation();
553 QueryManager::Query* query = manager->CreateQuery( 557 QueryManager::Query* query = manager->CreateQuery(
554 kTarget, kClient1Id, kSharedMemoryId, kSharedMemoryOffset); 558 kTarget, kClient1Id, kSharedMemoryId, kSharedMemoryOffset);
555 ASSERT_TRUE(query != NULL); 559 ASSERT_TRUE(query != NULL);
556 560
557 EXPECT_CALL(*gl_, BeginQuery(GL_SAMPLES_PASSED_ARB, kService1Id)) 561 EXPECT_CALL(*gl_, BeginQuery(GL_SAMPLES_PASSED_ARB, kService1Id))
(...skipping 12 matching lines...) Expand all
570 const GLuint kService1Id = 11; 574 const GLuint kService1Id = 11;
571 const GLuint kService2Id = 12; 575 const GLuint kService2Id = 12;
572 const GLenum kTarget = GL_ANY_SAMPLES_PASSED_EXT; 576 const GLenum kTarget = GL_ANY_SAMPLES_PASSED_EXT;
573 const base::subtle::Atomic32 kSubmitCount = 123; 577 const base::subtle::Atomic32 kSubmitCount = 123;
574 578
575 TestHelper::SetupFeatureInfoInitExpectations( 579 TestHelper::SetupFeatureInfoInitExpectations(
576 gl_.get(), 580 gl_.get(),
577 "GL_ARB_occlusion_query"); 581 "GL_ARB_occlusion_query");
578 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo()); 582 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo());
579 feature_info->InitializeForTesting(); 583 feature_info->InitializeForTesting();
580 scoped_ptr<QueryManager> manager( 584 std::unique_ptr<QueryManager> manager(
581 new QueryManager(decoder_.get(), feature_info.get())); 585 new QueryManager(decoder_.get(), feature_info.get()));
582 586
583 EXPECT_CALL(*gl_, GenQueries(1, _)) 587 EXPECT_CALL(*gl_, GenQueries(1, _))
584 .WillOnce(SetArgumentPointee<1>(kService1Id)) 588 .WillOnce(SetArgumentPointee<1>(kService1Id))
585 .RetiresOnSaturation(); 589 .RetiresOnSaturation();
586 QueryManager::Query* query = manager->CreateQuery( 590 QueryManager::Query* query = manager->CreateQuery(
587 kTarget, kClient1Id, kSharedMemoryId, kSharedMemoryOffset); 591 kTarget, kClient1Id, kSharedMemoryId, kSharedMemoryOffset);
588 ASSERT_TRUE(query != NULL); 592 ASSERT_TRUE(query != NULL);
589 593
590 EXPECT_CALL(*gl_, BeginQuery(GL_SAMPLES_PASSED_ARB, kService1Id)) 594 EXPECT_CALL(*gl_, BeginQuery(GL_SAMPLES_PASSED_ARB, kService1Id))
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after
913 } 917 }
914 918
915 TEST_F(QueryManagerTest, GetErrorQuery) { 919 TEST_F(QueryManagerTest, GetErrorQuery) {
916 const GLuint kClient1Id = 1; 920 const GLuint kClient1Id = 1;
917 const GLenum kTarget = GL_GET_ERROR_QUERY_CHROMIUM; 921 const GLenum kTarget = GL_GET_ERROR_QUERY_CHROMIUM;
918 const base::subtle::Atomic32 kSubmitCount = 123; 922 const base::subtle::Atomic32 kSubmitCount = 123;
919 923
920 TestHelper::SetupFeatureInfoInitExpectations(gl_.get(), ""); 924 TestHelper::SetupFeatureInfoInitExpectations(gl_.get(), "");
921 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo()); 925 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo());
922 feature_info->InitializeForTesting(); 926 feature_info->InitializeForTesting();
923 scoped_ptr<QueryManager> manager( 927 std::unique_ptr<QueryManager> manager(
924 new QueryManager(decoder_.get(), feature_info.get())); 928 new QueryManager(decoder_.get(), feature_info.get()));
925 929
926 QueryManager::Query* query = manager->CreateQuery( 930 QueryManager::Query* query = manager->CreateQuery(
927 kTarget, kClient1Id, kSharedMemoryId, kSharedMemoryOffset); 931 kTarget, kClient1Id, kSharedMemoryId, kSharedMemoryOffset);
928 ASSERT_TRUE(query != NULL); 932 ASSERT_TRUE(query != NULL);
929 933
930 // Setup shared memory like client would. 934 // Setup shared memory like client would.
931 QuerySync* sync = decoder_->GetSharedMemoryAs<QuerySync*>( 935 QuerySync* sync = decoder_->GetSharedMemoryAs<QuerySync*>(
932 kSharedMemoryId, kSharedMemoryOffset, sizeof(*sync)); 936 kSharedMemoryId, kSharedMemoryOffset, sizeof(*sync));
933 ASSERT_TRUE(sync != NULL); 937 ASSERT_TRUE(sync != NULL);
(...skipping 13 matching lines...) Expand all
947 951
948 EXPECT_EQ(static_cast<GLuint>(GL_INVALID_ENUM), sync->result); 952 EXPECT_EQ(static_cast<GLuint>(GL_INVALID_ENUM), sync->result);
949 953
950 manager->Destroy(false); 954 manager->Destroy(false);
951 } 955 }
952 956
953 } // namespace gles2 957 } // namespace gles2
954 } // namespace gpu 958 } // namespace gpu
955 959
956 960
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/query_manager.cc ('k') | gpu/command_buffer/service/renderbuffer_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698