| OLD | NEW |
| 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/program_manager.h" | 5 #include "gpu/command_buffer/service/program_manager.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "base/string_number_conversions.h" | 10 #include "base/string_number_conversions.h" |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 const GLuint kClient1Id = 1; | 101 const GLuint kClient1Id = 1; |
| 102 const GLuint kClient2Id = 2; | 102 const GLuint kClient2Id = 2; |
| 103 const GLuint kService1Id = 11; | 103 const GLuint kService1Id = 11; |
| 104 const GLuint kService2Id = 12; | 104 const GLuint kService2Id = 12; |
| 105 // Check we can create program. | 105 // Check we can create program. |
| 106 scoped_refptr<Program> program1( | 106 scoped_refptr<Program> program1( |
| 107 manager_.CreateProgram(kClient1Id, kService1Id)); | 107 manager_.CreateProgram(kClient1Id, kService1Id)); |
| 108 scoped_refptr<Program> program2( | 108 scoped_refptr<Program> program2( |
| 109 manager_.CreateProgram(kClient2Id, kService2Id)); | 109 manager_.CreateProgram(kClient2Id, kService2Id)); |
| 110 // Check program got created. | 110 // Check program got created. |
| 111 ASSERT_TRUE(program1); | 111 ASSERT_TRUE(program1.get()); |
| 112 ASSERT_TRUE(program2); | 112 ASSERT_TRUE(program2.get()); |
| 113 manager_.UseProgram(program1); | 113 manager_.UseProgram(program1.get()); |
| 114 manager_.MarkAsDeleted(&shader_manager, program1); | 114 manager_.MarkAsDeleted(&shader_manager, program1.get()); |
| 115 // Program will be deleted when last ref is released. | 115 // Program will be deleted when last ref is released. |
| 116 EXPECT_CALL(*gl_, DeleteProgram(kService2Id)) | 116 EXPECT_CALL(*gl_, DeleteProgram(kService2Id)) |
| 117 .Times(1) | 117 .Times(1) |
| 118 .RetiresOnSaturation(); | 118 .RetiresOnSaturation(); |
| 119 manager_.MarkAsDeleted(&shader_manager, program2); | 119 manager_.MarkAsDeleted(&shader_manager, program2.get()); |
| 120 EXPECT_TRUE(manager_.IsOwned(program1)); | 120 EXPECT_TRUE(manager_.IsOwned(program1.get())); |
| 121 EXPECT_FALSE(manager_.IsOwned(program2)); | 121 EXPECT_FALSE(manager_.IsOwned(program2.get())); |
| 122 } | 122 } |
| 123 | 123 |
| 124 TEST_F(ProgramManagerTest, Program) { | 124 TEST_F(ProgramManagerTest, Program) { |
| 125 const GLuint kClient1Id = 1; | 125 const GLuint kClient1Id = 1; |
| 126 const GLuint kService1Id = 11; | 126 const GLuint kService1Id = 11; |
| 127 // Check we can create program. | 127 // Check we can create program. |
| 128 Program* program1 = manager_.CreateProgram( | 128 Program* program1 = manager_.CreateProgram( |
| 129 kClient1Id, kService1Id); | 129 kClient1Id, kService1Id); |
| 130 ASSERT_TRUE(program1); | 130 ASSERT_TRUE(program1); |
| 131 EXPECT_EQ(kService1Id, program1->service_id()); | 131 EXPECT_EQ(kService1Id, program1->service_id()); |
| (...skipping 1407 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1539 new_vertex_shader, | 1539 new_vertex_shader, |
| 1540 fragment_shader_); | 1540 fragment_shader_); |
| 1541 SetExpectationsForProgramLink(kNewProgramServiceId); | 1541 SetExpectationsForProgramLink(kNewProgramServiceId); |
| 1542 | 1542 |
| 1543 EXPECT_TRUE(program->Link(&shader_manager_, NULL, NULL, | 1543 EXPECT_TRUE(program->Link(&shader_manager_, NULL, NULL, |
| 1544 info.get(), base::Bind(&ShaderCacheCb))); | 1544 info.get(), base::Bind(&ShaderCacheCb))); |
| 1545 } | 1545 } |
| 1546 | 1546 |
| 1547 } // namespace gles2 | 1547 } // namespace gles2 |
| 1548 } // namespace gpu | 1548 } // namespace gpu |
| OLD | NEW |