| 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 0c60b44c5a63853badb359d0a7f8618be4249c97..9ccbe1804a6fc0dcc2b0801a5f3f5b239d9f5109 100644
|
| --- a/gpu/command_buffer/service/shader_translator_unittest.cc
|
| +++ b/gpu/command_buffer/service/shader_translator_unittest.cc
|
| @@ -60,15 +60,11 @@ TEST_F(ShaderTranslatorTest, ValidVertexShader) {
|
| AttributeMap attrib_map;
|
| UniformMap uniform_map;
|
| VaryingMap varying_map;
|
| + AttributeList output_variable_list;
|
| NameMap name_map;
|
| - EXPECT_TRUE(vertex_translator_->Translate(shader,
|
| - &info_log,
|
| - &translated_source,
|
| - &shader_version,
|
| - &attrib_map,
|
| - &uniform_map,
|
| - &varying_map,
|
| - &name_map));
|
| + EXPECT_TRUE(vertex_translator_->Translate(
|
| + shader, &info_log, &translated_source, &shader_version, &attrib_map,
|
| + &uniform_map, &varying_map, &output_variable_list, &name_map));
|
| // Info log must be NULL.
|
| EXPECT_TRUE(info_log.empty());
|
| // Translated shader must be valid and non-empty.
|
| @@ -78,6 +74,7 @@ TEST_F(ShaderTranslatorTest, ValidVertexShader) {
|
| EXPECT_TRUE(attrib_map.empty());
|
| EXPECT_TRUE(uniform_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());
|
| }
|
| @@ -95,15 +92,11 @@ TEST_F(ShaderTranslatorTest, InvalidVertexShader) {
|
| AttributeMap attrib_map;
|
| UniformMap uniform_map;
|
| VaryingMap varying_map;
|
| + AttributeList 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,
|
| - &name_map));
|
| + EXPECT_FALSE(vertex_translator_->Translate(
|
| + bad_shader, &info_log, &translated_source, &shader_version, &attrib_map,
|
| + &uniform_map, &varying_map, &output_variable_list, &name_map));
|
| // Info log must be valid and non-empty.
|
| ASSERT_FALSE(info_log.empty());
|
| // Translated shader must be NULL.
|
| @@ -112,18 +105,14 @@ TEST_F(ShaderTranslatorTest, InvalidVertexShader) {
|
| 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());
|
|
|
| // 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,
|
| - &name_map));
|
| + EXPECT_TRUE(vertex_translator_->Translate(
|
| + good_shader, &info_log, &translated_source, &shader_version, &attrib_map,
|
| + &uniform_map, &varying_map, &output_variable_list, &name_map));
|
| EXPECT_TRUE(info_log.empty());
|
| EXPECT_FALSE(translated_source.empty());
|
| }
|
| @@ -140,15 +129,11 @@ TEST_F(ShaderTranslatorTest, ValidFragmentShader) {
|
| AttributeMap attrib_map;
|
| UniformMap uniform_map;
|
| VaryingMap varying_map;
|
| + AttributeList output_variable_list;
|
| NameMap name_map;
|
| - EXPECT_TRUE(fragment_translator_->Translate(shader,
|
| - &info_log,
|
| - &translated_source,
|
| - &shader_version,
|
| - &attrib_map,
|
| - &uniform_map,
|
| - &varying_map,
|
| - &name_map));
|
| + EXPECT_TRUE(fragment_translator_->Translate(
|
| + shader, &info_log, &translated_source, &shader_version, &attrib_map,
|
| + &uniform_map, &varying_map, &output_variable_list, &name_map));
|
| // Info log must be NULL.
|
| EXPECT_TRUE(info_log.empty());
|
| // Translated shader must be valid and non-empty.
|
| @@ -158,6 +143,8 @@ TEST_F(ShaderTranslatorTest, ValidFragmentShader) {
|
| EXPECT_TRUE(uniform_map.empty());
|
| EXPECT_TRUE(varying_map.empty());
|
| EXPECT_TRUE(name_map.empty());
|
| + // gl_FragColor.
|
| + EXPECT_EQ(1u, output_variable_list.size());
|
| }
|
|
|
| TEST_F(ShaderTranslatorTest, InvalidFragmentShader) {
|
| @@ -168,16 +155,12 @@ TEST_F(ShaderTranslatorTest, InvalidFragmentShader) {
|
| AttributeMap attrib_map;
|
| UniformMap uniform_map;
|
| VaryingMap varying_map;
|
| + AttributeList 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,
|
| - &name_map));
|
| + EXPECT_FALSE(fragment_translator_->Translate(
|
| + shader, &info_log, &translated_source, &shader_version, &attrib_map,
|
| + &uniform_map, &varying_map, &output_variable_list, &name_map));
|
| // Info log must be valid and non-empty.
|
| EXPECT_FALSE(info_log.empty());
|
| // Translated shader must be NULL.
|
| @@ -186,6 +169,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());
|
| }
|
|
|
| @@ -201,15 +185,11 @@ TEST_F(ShaderTranslatorTest, GetAttributes) {
|
| AttributeMap attrib_map;
|
| UniformMap uniform_map;
|
| VaryingMap varying_map;
|
| + AttributeList output_variable_list;
|
| NameMap name_map;
|
| - EXPECT_TRUE(vertex_translator_->Translate(shader,
|
| - &info_log,
|
| - &translated_source,
|
| - &shader_version,
|
| - &attrib_map,
|
| - &uniform_map,
|
| - &varying_map,
|
| - &name_map));
|
| + EXPECT_TRUE(vertex_translator_->Translate(
|
| + shader, &info_log, &translated_source, &shader_version, &attrib_map,
|
| + &uniform_map, &varying_map, &output_variable_list, &name_map));
|
| // Info log must be NULL.
|
| EXPECT_TRUE(info_log.empty());
|
| // Translated shader must be valid and non-empty.
|
| @@ -245,15 +225,11 @@ TEST_F(ShaderTranslatorTest, GetUniforms) {
|
| AttributeMap attrib_map;
|
| UniformMap uniform_map;
|
| VaryingMap varying_map;
|
| + AttributeList output_variable_list;
|
| NameMap name_map;
|
| - EXPECT_TRUE(fragment_translator_->Translate(shader,
|
| - &info_log,
|
| - &translated_source,
|
| - &shader_version,
|
| - &attrib_map,
|
| - &uniform_map,
|
| - &varying_map,
|
| - &name_map));
|
| + EXPECT_TRUE(fragment_translator_->Translate(
|
| + shader, &info_log, &translated_source, &shader_version, &attrib_map,
|
| + &uniform_map, &varying_map, &output_variable_list, &name_map));
|
| // Info log must be NULL.
|
| EXPECT_TRUE(info_log.empty());
|
| // Translated shader must be valid and non-empty.
|
| @@ -283,6 +259,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");
|
| }
|
|
|
| TEST_F(ShaderTranslatorTest, OptionsString) {
|
| @@ -352,7 +331,7 @@ TEST_P(ShaderTranslatorOutputVersionTest, HasCorrectOutputGLSLVersion) {
|
| int shader_version;
|
| EXPECT_TRUE(translator->Translate(kShader, nullptr, &translated_source,
|
| &shader_version, nullptr, nullptr, nullptr,
|
| - nullptr));
|
| + nullptr, nullptr));
|
|
|
| std::string expected_version_directive = testing::get<1>(GetParam());
|
| if (expected_version_directive.empty()) {
|
|
|