OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 "base/at_exit.h" | 5 #include "base/at_exit.h" |
6 #include "base/message_loop.h" | 6 #include "base/message_loop.h" |
7 #include "base/scoped_nsautorelease_pool.h" | 7 #include "base/scoped_nsautorelease_pool.h" |
8 #include "gpu/command_buffer/common/command_buffer_mock.h" | 8 #include "gpu/command_buffer/common/command_buffer_mock.h" |
9 #include "gpu/command_buffer/service/context_group.h" | 9 #include "gpu/command_buffer/service/context_group.h" |
10 #include "gpu/command_buffer/service/gpu_processor.h" | 10 #include "gpu/command_buffer/service/gpu_processor.h" |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
51 | 51 |
52 decoder_ = new gles2::MockGLES2Decoder(&group_); | 52 decoder_ = new gles2::MockGLES2Decoder(&group_); |
53 | 53 |
54 parser_ = new CommandParser(buffer_, | 54 parser_ = new CommandParser(buffer_, |
55 kRingBufferEntries, | 55 kRingBufferEntries, |
56 0, | 56 0, |
57 kRingBufferEntries, | 57 kRingBufferEntries, |
58 0, | 58 0, |
59 async_api_.get()); | 59 async_api_.get()); |
60 | 60 |
61 processor_ = new GPUProcessor(command_buffer_.get(), | 61 processor_.reset(new GPUProcessor(command_buffer_.get(), |
62 decoder_, | 62 decoder_, |
63 parser_, | 63 parser_, |
64 2); | 64 2)); |
65 } | 65 } |
66 | 66 |
67 virtual void TearDown() { | 67 virtual void TearDown() { |
68 // Ensure that any unexpected tasks posted by the GPU processor are executed | 68 // Ensure that any unexpected tasks posted by the GPU processor are executed |
69 // in order to fail the test. | 69 // in order to fail the test. |
70 MessageLoop::current()->RunAllPending(); | 70 MessageLoop::current()->RunAllPending(); |
71 } | 71 } |
72 | 72 |
73 error::Error GetError() { | 73 error::Error GetError() { |
74 return command_buffer_->GetState().error; | 74 return command_buffer_->GetState().error; |
75 } | 75 } |
76 | 76 |
77 base::ScopedNSAutoreleasePool autorelease_pool_; | 77 base::ScopedNSAutoreleasePool autorelease_pool_; |
78 base::AtExitManager at_exit_manager; | 78 base::AtExitManager at_exit_manager; |
79 MessageLoop message_loop; | 79 MessageLoop message_loop; |
80 scoped_ptr<MockCommandBuffer> command_buffer_; | 80 scoped_ptr<MockCommandBuffer> command_buffer_; |
81 scoped_ptr<base::SharedMemory> shared_memory_; | 81 scoped_ptr<base::SharedMemory> shared_memory_; |
82 Buffer shared_memory_buffer_; | 82 Buffer shared_memory_buffer_; |
83 int32* buffer_; | 83 int32* buffer_; |
84 gles2::ContextGroup group_; | 84 gles2::ContextGroup group_; |
85 gles2::MockGLES2Decoder* decoder_; | 85 gles2::MockGLES2Decoder* decoder_; |
86 CommandParser* parser_; | 86 CommandParser* parser_; |
87 scoped_ptr<AsyncAPIMock> async_api_; | 87 scoped_ptr<AsyncAPIMock> async_api_; |
88 scoped_refptr<GPUProcessor> processor_; | 88 scoped_ptr<GPUProcessor> processor_; |
89 }; | 89 }; |
90 | 90 |
91 TEST_F(GPUProcessorTest, ProcessorDoesNothingIfRingBufferIsEmpty) { | 91 TEST_F(GPUProcessorTest, ProcessorDoesNothingIfRingBufferIsEmpty) { |
92 CommandBuffer::State state; | 92 CommandBuffer::State state; |
93 | 93 |
94 state.put_offset = 0; | 94 state.put_offset = 0; |
95 EXPECT_CALL(*command_buffer_, GetState()) | 95 EXPECT_CALL(*command_buffer_, GetState()) |
96 .WillOnce(Return(state)); | 96 .WillOnce(Return(state)); |
97 EXPECT_CALL(*command_buffer_, SetGetOffset(0)); | 97 EXPECT_CALL(*command_buffer_, SetGetOffset(0)); |
98 | 98 |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
250 | 250 |
251 EXPECT_EQ(kRingBufferSize, processor_->GetSharedMemoryBuffer(7).size); | 251 EXPECT_EQ(kRingBufferSize, processor_->GetSharedMemoryBuffer(7).size); |
252 } | 252 } |
253 | 253 |
254 TEST_F(GPUProcessorTest, SetTokenForwardsToCommandBuffer) { | 254 TEST_F(GPUProcessorTest, SetTokenForwardsToCommandBuffer) { |
255 EXPECT_CALL(*command_buffer_, SetToken(7)); | 255 EXPECT_CALL(*command_buffer_, SetToken(7)); |
256 processor_->set_token(7); | 256 processor_->set_token(7); |
257 } | 257 } |
258 | 258 |
259 } // namespace gpu | 259 } // namespace gpu |
OLD | NEW |