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 1359 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1370 | 1370 |
1371 ProgramManager::ProgramInfo* program_info = manager_.CreateProgramInfo( | 1371 ProgramManager::ProgramInfo* program_info = manager_.CreateProgramInfo( |
1372 kNewProgramClientId, kNewProgramServiceId); | 1372 kNewProgramClientId, kNewProgramServiceId); |
1373 ASSERT_TRUE(program_info != NULL); | 1373 ASSERT_TRUE(program_info != NULL); |
1374 program_info->AttachShader(&shader_manager_, new_vertex_shader); | 1374 program_info->AttachShader(&shader_manager_, new_vertex_shader); |
1375 program_info->AttachShader(&shader_manager_, fragment_shader_); | 1375 program_info->AttachShader(&shader_manager_, fragment_shader_); |
1376 | 1376 |
1377 SetExpectationsForNoCompile(new_vertex_shader); | 1377 SetExpectationsForNoCompile(new_vertex_shader); |
1378 | 1378 |
1379 manager_.DoCompileShader(new_vertex_shader, NULL, NULL); | 1379 manager_.DoCompileShader(new_vertex_shader, NULL, NULL); |
1380 EXPECT_EQ(ShaderManager::ShaderInfo::PENDING_DEFERRED_COMPILE, | |
1381 new_vertex_shader->compilation_status()); | |
greggman
2012/07/23 22:13:03
style: indent
dmurph
2012/07/23 22:18:58
Done.
| |
1380 | 1382 |
1381 new_vertex_shader->UpdateSource("different!"); | 1383 new_vertex_shader->UpdateSource("different!"); |
1382 EXPECT_EQ(original_source, | 1384 EXPECT_EQ(original_source, |
1383 *new_vertex_shader->deferred_compilation_source()); | 1385 *new_vertex_shader->deferred_compilation_source()); |
1384 | 1386 |
1385 EXPECT_FALSE(new_vertex_shader->source_compiled()); | 1387 EXPECT_EQ(ShaderManager::ShaderInfo::PENDING_DEFERRED_COMPILE, |
1386 EXPECT_FALSE(fragment_shader_->source_compiled()); | 1388 new_vertex_shader->compilation_status()); |
1389 EXPECT_EQ(ShaderManager::ShaderInfo::PENDING_DEFERRED_COMPILE, | |
1390 fragment_shader_->compilation_status()); | |
1387 | 1391 |
1388 SetExpectationsForNoCompile(fragment_shader_); | 1392 SetExpectationsForNoCompile(fragment_shader_); |
1389 SetExpectationsForNotCachingProgram(program_info, | 1393 SetExpectationsForNotCachingProgram(program_info, |
1390 new_vertex_shader, | 1394 new_vertex_shader, |
1391 fragment_shader_); | 1395 fragment_shader_); |
1392 SetExpectationsForProgramLoad(kNewProgramServiceId, | 1396 SetExpectationsForProgramLoad(kNewProgramServiceId, |
1393 program_info, | 1397 program_info, |
1394 new_vertex_shader, | 1398 new_vertex_shader, |
1395 fragment_shader_, | 1399 fragment_shader_, |
1396 ProgramCache::PROGRAM_LOAD_SUCCESS); | 1400 ProgramCache::PROGRAM_LOAD_SUCCESS); |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1428 | 1432 |
1429 const std::string differentSource = "different!"; | 1433 const std::string differentSource = "different!"; |
1430 new_vertex_shader->UpdateSource(differentSource.c_str()); | 1434 new_vertex_shader->UpdateSource(differentSource.c_str()); |
1431 SetExpectationsForSuccessCompile(new_vertex_shader); | 1435 SetExpectationsForSuccessCompile(new_vertex_shader); |
1432 | 1436 |
1433 FeatureInfo::Ref info(new FeatureInfo()); | 1437 FeatureInfo::Ref info(new FeatureInfo()); |
1434 manager_.DoCompileShader(new_vertex_shader, NULL, info.get()); | 1438 manager_.DoCompileShader(new_vertex_shader, NULL, info.get()); |
1435 EXPECT_EQ(differentSource, | 1439 EXPECT_EQ(differentSource, |
1436 *new_vertex_shader->deferred_compilation_source()); | 1440 *new_vertex_shader->deferred_compilation_source()); |
1437 | 1441 |
1438 EXPECT_TRUE(new_vertex_shader->source_compiled()); | 1442 EXPECT_EQ(ShaderManager::ShaderInfo::COMPILED, |
1439 EXPECT_FALSE(fragment_shader_->source_compiled()); | 1443 new_vertex_shader->compilation_status()); |
1444 EXPECT_EQ(ShaderManager::ShaderInfo::PENDING_DEFERRED_COMPILE, | |
1445 fragment_shader_->compilation_status()); | |
1440 | 1446 |
1441 // so we don't recompile because we were pending originally | 1447 // so we don't recompile because we were pending originally |
1442 SetExpectationsForNoCompile(new_vertex_shader); | 1448 SetExpectationsForNoCompile(new_vertex_shader); |
1443 SetExpectationsForSuccessCompile(fragment_shader_); | 1449 SetExpectationsForSuccessCompile(fragment_shader_); |
1444 SetExpectationsForProgramCached(program_info, | 1450 SetExpectationsForProgramCached(program_info, |
1445 new_vertex_shader, | 1451 new_vertex_shader, |
1446 fragment_shader_); | 1452 fragment_shader_); |
1447 SetExpectationsForProgramLink(kNewProgramServiceId); | 1453 SetExpectationsForProgramLink(kNewProgramServiceId); |
1448 | 1454 |
1449 EXPECT_TRUE(program_info->Link(&shader_manager_, NULL, NULL, info.get())); | 1455 EXPECT_TRUE(program_info->Link(&shader_manager_, NULL, NULL, info.get())); |
1450 } | 1456 } |
1451 | 1457 |
1452 } // namespace gles2 | 1458 } // namespace gles2 |
1453 } // namespace gpu | 1459 } // namespace gpu |
OLD | NEW |