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

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

Issue 10812002: Bug fixes for getTranslatedShader (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: last fixes Created 8 years, 5 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 "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 1365 matching lines...) Expand 10 before | Expand all | Expand 10 after
1376 1376
1377 ProgramManager::ProgramInfo* program_info = manager_.CreateProgramInfo( 1377 ProgramManager::ProgramInfo* program_info = manager_.CreateProgramInfo(
1378 kNewProgramClientId, kNewProgramServiceId); 1378 kNewProgramClientId, kNewProgramServiceId);
1379 ASSERT_TRUE(program_info != NULL); 1379 ASSERT_TRUE(program_info != NULL);
1380 program_info->AttachShader(&shader_manager_, new_vertex_shader); 1380 program_info->AttachShader(&shader_manager_, new_vertex_shader);
1381 program_info->AttachShader(&shader_manager_, fragment_shader_); 1381 program_info->AttachShader(&shader_manager_, fragment_shader_);
1382 1382
1383 SetExpectationsForNoCompile(new_vertex_shader); 1383 SetExpectationsForNoCompile(new_vertex_shader);
1384 1384
1385 manager_.DoCompileShader(new_vertex_shader, NULL, NULL); 1385 manager_.DoCompileShader(new_vertex_shader, NULL, NULL);
1386 EXPECT_EQ(ShaderManager::ShaderInfo::PENDING_DEFERRED_COMPILE,
1387 new_vertex_shader->compilation_status());
1386 1388
1387 new_vertex_shader->UpdateSource("different!"); 1389 new_vertex_shader->UpdateSource("different!");
1388 EXPECT_EQ(original_source, 1390 EXPECT_EQ(original_source,
1389 *new_vertex_shader->deferred_compilation_source()); 1391 *new_vertex_shader->deferred_compilation_source());
1390 1392
1391 EXPECT_FALSE(new_vertex_shader->source_compiled()); 1393 EXPECT_EQ(ShaderManager::ShaderInfo::PENDING_DEFERRED_COMPILE,
1392 EXPECT_FALSE(fragment_shader_->source_compiled()); 1394 new_vertex_shader->compilation_status());
1395 EXPECT_EQ(ShaderManager::ShaderInfo::PENDING_DEFERRED_COMPILE,
1396 fragment_shader_->compilation_status());
1393 1397
1394 SetExpectationsForNoCompile(fragment_shader_); 1398 SetExpectationsForNoCompile(fragment_shader_);
1395 SetExpectationsForNotCachingProgram(program_info, 1399 SetExpectationsForNotCachingProgram(program_info,
1396 new_vertex_shader, 1400 new_vertex_shader,
1397 fragment_shader_); 1401 fragment_shader_);
1398 SetExpectationsForProgramLoad(kNewProgramServiceId, 1402 SetExpectationsForProgramLoad(kNewProgramServiceId,
1399 program_info, 1403 program_info,
1400 new_vertex_shader, 1404 new_vertex_shader,
1401 fragment_shader_, 1405 fragment_shader_,
1402 ProgramCache::PROGRAM_LOAD_SUCCESS); 1406 ProgramCache::PROGRAM_LOAD_SUCCESS);
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
1434 1438
1435 const std::string differentSource = "different!"; 1439 const std::string differentSource = "different!";
1436 new_vertex_shader->UpdateSource(differentSource.c_str()); 1440 new_vertex_shader->UpdateSource(differentSource.c_str());
1437 SetExpectationsForSuccessCompile(new_vertex_shader); 1441 SetExpectationsForSuccessCompile(new_vertex_shader);
1438 1442
1439 FeatureInfo::Ref info(new FeatureInfo()); 1443 FeatureInfo::Ref info(new FeatureInfo());
1440 manager_.DoCompileShader(new_vertex_shader, NULL, info.get()); 1444 manager_.DoCompileShader(new_vertex_shader, NULL, info.get());
1441 EXPECT_EQ(differentSource, 1445 EXPECT_EQ(differentSource,
1442 *new_vertex_shader->deferred_compilation_source()); 1446 *new_vertex_shader->deferred_compilation_source());
1443 1447
1444 EXPECT_TRUE(new_vertex_shader->source_compiled()); 1448 EXPECT_EQ(ShaderManager::ShaderInfo::COMPILED,
1445 EXPECT_FALSE(fragment_shader_->source_compiled()); 1449 new_vertex_shader->compilation_status());
1450 EXPECT_EQ(ShaderManager::ShaderInfo::PENDING_DEFERRED_COMPILE,
1451 fragment_shader_->compilation_status());
1446 1452
1447 // so we don't recompile because we were pending originally 1453 // so we don't recompile because we were pending originally
1448 SetExpectationsForNoCompile(new_vertex_shader); 1454 SetExpectationsForNoCompile(new_vertex_shader);
1449 SetExpectationsForSuccessCompile(fragment_shader_); 1455 SetExpectationsForSuccessCompile(fragment_shader_);
1450 SetExpectationsForProgramCached(program_info, 1456 SetExpectationsForProgramCached(program_info,
1451 new_vertex_shader, 1457 new_vertex_shader,
1452 fragment_shader_); 1458 fragment_shader_);
1453 SetExpectationsForProgramLink(kNewProgramServiceId); 1459 SetExpectationsForProgramLink(kNewProgramServiceId);
1454 1460
1455 EXPECT_TRUE(program_info->Link(&shader_manager_, NULL, NULL, info.get())); 1461 EXPECT_TRUE(program_info->Link(&shader_manager_, NULL, NULL, info.get()));
1456 } 1462 }
1457 1463
1458 } // namespace gles2 1464 } // namespace gles2
1459 } // namespace gpu 1465 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/program_manager.cc ('k') | gpu/command_buffer/service/shader_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698