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

Unified Diff: gpu/command_buffer/service/shader_manager_unittest.cc

Issue 903273002: Update from https://crrev.com/315085 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gpu/command_buffer/service/shader_manager.cc ('k') | gpu/command_buffer/service/shader_translator.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/command_buffer/service/shader_manager_unittest.cc
diff --git a/gpu/command_buffer/service/shader_manager_unittest.cc b/gpu/command_buffer/service/shader_manager_unittest.cc
index 4218d504c688bfe925b2cc7d17500f00ba0083ff..f5f620655fb91adcc9510da5e1627cdcc45b7c10 100644
--- a/gpu/command_buffer/service/shader_manager_unittest.cc
+++ b/gpu/command_buffer/service/shader_manager_unittest.cc
@@ -127,16 +127,30 @@ TEST_F(ShaderManagerTest, DoCompile) {
EXPECT_FALSE(shader1->InUse());
EXPECT_TRUE(shader1->source().empty());
EXPECT_TRUE(shader1->log_info().empty());
- EXPECT_TRUE(shader1->signature_source().empty());
+ EXPECT_TRUE(shader1->last_compiled_source().empty());
EXPECT_TRUE(shader1->translated_source().empty());
EXPECT_EQ(0u, shader1->attrib_map().size());
EXPECT_EQ(0u, shader1->uniform_map().size());
EXPECT_EQ(0u, shader1->varying_map().size());
+ EXPECT_EQ(Shader::kShaderStateWaiting, shader1->shader_state());
// Check we can set its source.
shader1->set_source(kClient1Source);
EXPECT_STREQ(kClient1Source, shader1->source().c_str());
- EXPECT_TRUE(shader1->signature_source().empty());
+ EXPECT_TRUE(shader1->last_compiled_source().empty());
+
+ // Check that DoCompile() will not work if RequestCompile() was not called.
+ MockShaderTranslator translator;
+ shader1->DoCompile(&translator, Shader::kANGLE);
+ EXPECT_EQ(Shader::kShaderStateWaiting, shader1->shader_state());
+ EXPECT_FALSE(shader1->valid());
+
+ // Check RequestCompile() will update the state and last compiled source, but
+ // still keep the actual compile state invalid.
+ shader1->RequestCompile();
+ EXPECT_EQ(Shader::kShaderStateCompileRequested, shader1->shader_state());
+ EXPECT_STREQ(kClient1Source, shader1->last_compiled_source().c_str());
+ EXPECT_FALSE(shader1->valid());
// Check DoCompile() will set compilation states, log, translated source,
// shader variables, and name mapping.
@@ -168,7 +182,7 @@ TEST_F(ShaderManagerTest, DoCompile) {
EXPECT_TRUE(shader1->valid());
// When compilation succeeds, no log is recorded.
EXPECT_STREQ("", shader1->log_info().c_str());
- EXPECT_STREQ(kClient1Source, shader1->signature_source().c_str());
+ EXPECT_STREQ(kClient1Source, shader1->last_compiled_source().c_str());
EXPECT_STREQ(kTranslatedSource.c_str(), shader1->translated_source().c_str());
// Check varying infos got copied.
« no previous file with comments | « gpu/command_buffer/service/shader_manager.cc ('k') | gpu/command_buffer/service/shader_translator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698