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

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

Issue 1309743005: command_buffer: Implement EXT_blend_func_extended (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@new-05-path-fragment-input-gen
Patch Set: rebase Created 5 years 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_translator.cc ('k') | gpu/command_buffer/service/test_helper.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/command_buffer/service/shader_translator_unittest.cc
diff --git a/gpu/command_buffer/service/shader_translator_unittest.cc b/gpu/command_buffer/service/shader_translator_unittest.cc
index eff11c1ca0343762df7ba22a8f9de6f1771d4eab..e5b3f6b18473ebb731c780066620bdfdc1489edf 100644
--- a/gpu/command_buffer/service/shader_translator_unittest.cc
+++ b/gpu/command_buffer/service/shader_translator_unittest.cc
@@ -98,16 +98,13 @@ TEST_F(ShaderTranslatorTest, ValidVertexShader) {
UniformMap uniform_map;
VaryingMap varying_map;
InterfaceBlockMap interface_block_map;
+ OutputVariableList output_variable_list;
NameMap name_map;
- EXPECT_TRUE(vertex_translator_->Translate(shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_TRUE(vertex_translator_->Translate(
+ shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
+
// Info log must be NULL.
EXPECT_TRUE(info_log.empty());
// Translated shader must be valid and non-empty.
@@ -118,6 +115,7 @@ TEST_F(ShaderTranslatorTest, ValidVertexShader) {
EXPECT_TRUE(uniform_map.empty());
EXPECT_TRUE(interface_block_map.empty());
EXPECT_EQ(1u, varying_map.size());
+ EXPECT_TRUE(output_variable_list.empty());
// There should be no name mapping.
EXPECT_TRUE(name_map.empty());
}
@@ -136,16 +134,12 @@ TEST_F(ShaderTranslatorTest, InvalidVertexShader) {
UniformMap uniform_map;
VaryingMap varying_map;
InterfaceBlockMap interface_block_map;
+ OutputVariableList output_variable_list;
NameMap name_map;
- EXPECT_FALSE(vertex_translator_->Translate(bad_shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_FALSE(vertex_translator_->Translate(
+ bad_shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
// Info log must be valid and non-empty.
ASSERT_FALSE(info_log.empty());
// Translated shader must be NULL.
@@ -156,19 +150,15 @@ TEST_F(ShaderTranslatorTest, InvalidVertexShader) {
EXPECT_TRUE(uniform_map.empty());
EXPECT_TRUE(varying_map.empty());
EXPECT_TRUE(interface_block_map.empty());
+ EXPECT_TRUE(output_variable_list.empty());
EXPECT_TRUE(name_map.empty());
// Try a good shader after bad.
info_log.clear();
- EXPECT_TRUE(vertex_translator_->Translate(good_shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_TRUE(vertex_translator_->Translate(
+ good_shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
EXPECT_TRUE(info_log.empty());
EXPECT_FALSE(translated_source.empty());
EXPECT_TRUE(interface_block_map.empty());
@@ -187,16 +177,12 @@ TEST_F(ShaderTranslatorTest, ValidFragmentShader) {
UniformMap uniform_map;
VaryingMap varying_map;
InterfaceBlockMap interface_block_map;
+ OutputVariableList output_variable_list;
NameMap name_map;
- EXPECT_TRUE(fragment_translator_->Translate(shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_TRUE(fragment_translator_->Translate(
+ shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
// Info log must be NULL.
EXPECT_TRUE(info_log.empty());
// Translated shader must be valid and non-empty.
@@ -208,6 +194,8 @@ TEST_F(ShaderTranslatorTest, ValidFragmentShader) {
EXPECT_TRUE(varying_map.empty());
EXPECT_TRUE(interface_block_map.empty());
EXPECT_TRUE(name_map.empty());
+ // gl_FragColor.
+ EXPECT_EQ(1u, output_variable_list.size());
}
TEST_F(ShaderTranslatorTest, InvalidFragmentShader) {
@@ -219,17 +207,13 @@ TEST_F(ShaderTranslatorTest, InvalidFragmentShader) {
UniformMap uniform_map;
VaryingMap varying_map;
InterfaceBlockMap interface_block_map;
+ OutputVariableList output_variable_list;
NameMap name_map;
// An invalid shader should fail.
- EXPECT_FALSE(fragment_translator_->Translate(shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_FALSE(fragment_translator_->Translate(
+ shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
// Info log must be valid and non-empty.
EXPECT_FALSE(info_log.empty());
// Translated shader must be NULL.
@@ -239,6 +223,7 @@ TEST_F(ShaderTranslatorTest, InvalidFragmentShader) {
EXPECT_TRUE(attrib_map.empty());
EXPECT_TRUE(uniform_map.empty());
EXPECT_TRUE(varying_map.empty());
+ EXPECT_TRUE(output_variable_list.empty());
EXPECT_TRUE(name_map.empty());
}
@@ -255,16 +240,12 @@ TEST_F(ShaderTranslatorTest, GetAttributes) {
UniformMap uniform_map;
VaryingMap varying_map;
InterfaceBlockMap interface_block_map;
+ OutputVariableList output_variable_list;
NameMap name_map;
- EXPECT_TRUE(vertex_translator_->Translate(shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_TRUE(vertex_translator_->Translate(
+ shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
// Info log must be NULL.
EXPECT_TRUE(info_log.empty());
// Translated shader must be valid and non-empty.
@@ -303,16 +284,12 @@ TEST_F(ShaderTranslatorTest, GetUniforms) {
UniformMap uniform_map;
VaryingMap varying_map;
InterfaceBlockMap interface_block_map;
+ OutputVariableList output_variable_list;
NameMap name_map;
- EXPECT_TRUE(fragment_translator_->Translate(shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_TRUE(fragment_translator_->Translate(
+ shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
// Info log must be NULL.
EXPECT_TRUE(info_log.empty());
// Translated shader must be valid and non-empty.
@@ -344,6 +321,9 @@ TEST_F(ShaderTranslatorTest, GetUniforms) {
EXPECT_EQ(1u, info->arraySize);
EXPECT_STREQ("color", info->name.c_str());
EXPECT_STREQ("bar[1].foo.color[0]", original_name.c_str());
+ EXPECT_EQ(1u, output_variable_list.size());
+ ASSERT_TRUE(output_variable_list.size() > 0);
+ EXPECT_EQ(output_variable_list[0].mappedName, "gl_FragColor");
}
@@ -372,16 +352,12 @@ TEST_F(ES3ShaderTranslatorTest, InvalidInterfaceBlocks) {
UniformMap uniform_map;
VaryingMap varying_map;
InterfaceBlockMap interface_block_map;
+ OutputVariableList output_variable_list;
NameMap name_map;
- EXPECT_FALSE(fragment_translator_->Translate(shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_FALSE(fragment_translator_->Translate(
+ shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
// Info log must be valid and non-empty.
ASSERT_FALSE(info_log.empty());
// Translated shader must be NULL.
@@ -415,16 +391,12 @@ TEST_F(ES3ShaderTranslatorTest, GetInterfaceBlocks) {
UniformMap uniform_map;
VaryingMap varying_map;
InterfaceBlockMap interface_block_map;
+ OutputVariableList output_variable_list;
NameMap name_map;
- EXPECT_TRUE(fragment_translator_->Translate(shader,
- &info_log,
- &translated_source,
- &shader_version,
- &attrib_map,
- &uniform_map,
- &varying_map,
- &interface_block_map,
- &name_map));
+ EXPECT_TRUE(fragment_translator_->Translate(
+ shader, &info_log, &translated_source, &shader_version, &attrib_map,
+ &uniform_map, &varying_map, &interface_block_map, &output_variable_list,
+ &name_map));
// Info log must be NULL.
EXPECT_TRUE(info_log.empty());
// Translated shader must be valid and non-empty.
@@ -509,7 +481,7 @@ TEST_P(ShaderTranslatorOutputVersionTest, HasCorrectOutputGLSLVersion) {
int shader_version;
EXPECT_TRUE(translator->Translate(kShader, nullptr, &translated_source,
&shader_version, nullptr, nullptr, nullptr,
- nullptr, nullptr));
+ nullptr, nullptr, nullptr));
std::string expected_version_directive = testing::get<1>(GetParam());
if (expected_version_directive.empty()) {
« no previous file with comments | « gpu/command_buffer/service/shader_translator.cc ('k') | gpu/command_buffer/service/test_helper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698