Use value-paramaterized tests instead of by type.

This should fix our non-standard template use, which causes compile
errors for the tests on GCC/Clang.

BUG=angleproject:997

Change-Id: Id1bb15231eda445f37e53a5b33d4684ec6618d8e
Reviewed-on: https://chromium-review.googlesource.com/269858
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
diff --git a/src/tests/end2end_tests/SwizzleTest.cpp b/src/tests/end2end_tests/SwizzleTest.cpp
index 0b2af05..942441f 100644
--- a/src/tests/end2end_tests/SwizzleTest.cpp
+++ b/src/tests/end2end_tests/SwizzleTest.cpp
@@ -1,15 +1,22 @@
+//
+// Copyright 2015 The ANGLE Project Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+//
+
 #include "ANGLETest.h"
 
 #include <vector>
 
-// Use this to select which configurations (e.g. which renderer, which GLES major version) these tests should be run against.
-ANGLE_TYPED_TEST_CASE(SwizzleTest, ES3_D3D11);
+using namespace angle;
 
-template<typename T>
+namespace
+{
+
 class SwizzleTest : public ANGLETest
 {
-protected:
-    SwizzleTest() : ANGLETest(T::GetGlesMajorVersion(), T::GetPlatform())
+  protected:
+    SwizzleTest()
     {
         setWindowWidth(128);
         setWindowHeight(128);
@@ -48,7 +55,7 @@
         }
     }
 
-    virtual void SetUp()
+    void SetUp() override
     {
         ANGLETest::SetUp();
 
@@ -88,7 +95,7 @@
         glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
     }
 
-    virtual void TearDown()
+    void TearDown() override
     {
         glDeleteProgram(mProgram);
         glDeleteTextures(1, &mTexture);
@@ -184,77 +191,77 @@
     std::vector<swizzlePermutation> mPermutations;
 };
 
-TYPED_TEST(SwizzleTest, RGBA8_2D)
+TEST_P(SwizzleTest, RGBA8_2D)
 {
     GLubyte data[] = { 1, 64, 128, 200 };
     init2DTexture(GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, RGB8_2D)
+TEST_P(SwizzleTest, RGB8_2D)
 {
     GLubyte data[] = { 77, 66, 55 };
     init2DTexture(GL_RGB8, GL_RGB, GL_UNSIGNED_BYTE, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, RG8_2D)
+TEST_P(SwizzleTest, RG8_2D)
 {
     GLubyte data[] = { 11, 99 };
     init2DTexture(GL_RG8, GL_RG, GL_UNSIGNED_BYTE, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, R8_2D)
+TEST_P(SwizzleTest, R8_2D)
 {
     GLubyte data[] = { 2 };
     init2DTexture(GL_R8, GL_RED, GL_UNSIGNED_BYTE, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, RGBA32F_2D)
+TEST_P(SwizzleTest, RGBA32F_2D)
 {
     GLfloat data[] = { 0.25f, 0.5f, 0.75f, 0.8f };
     init2DTexture(GL_RGBA32F, GL_RGBA, GL_FLOAT, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, RGB32F_2D)
+TEST_P(SwizzleTest, RGB32F_2D)
 {
     GLfloat data[] = { 0.1f, 0.2f, 0.3f };
     init2DTexture(GL_RGB32F, GL_RGB, GL_FLOAT, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, RG32F_2D)
+TEST_P(SwizzleTest, RG32F_2D)
 {
     GLfloat data[] = { 0.9f, 0.1f  };
     init2DTexture(GL_RG32F, GL_RG, GL_FLOAT, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, R32F_2D)
+TEST_P(SwizzleTest, R32F_2D)
 {
     GLfloat data[] = { 0.5f };
     init2DTexture(GL_R32F, GL_RED, GL_FLOAT, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, D32F_2D)
+TEST_P(SwizzleTest, D32F_2D)
 {
     GLfloat data[] = { 0.5f };
     init2DTexture(GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT, GL_FLOAT, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, D16_2D)
+TEST_P(SwizzleTest, D16_2D)
 {
     GLushort data[] = { 0xFF };
     init2DTexture(GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT, GL_UNSIGNED_SHORT, data);
     runTest2D();
 }
 
-TYPED_TEST(SwizzleTest, D24_2D)
+TEST_P(SwizzleTest, D24_2D)
 {
     GLuint data[] = { 0xFFFF };
     init2DTexture(GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT, data);
@@ -263,7 +270,7 @@
 
 #include "media/pixel.inl"
 
-TYPED_TEST(SwizzleTest, CompressedDXT_2D)
+TEST_P(SwizzleTest, CompressedDXT_2D)
 {
     if (!extensionEnabled("GL_EXT_texture_compression_dxt1"))
     {
@@ -273,3 +280,8 @@
     init2DCompressedTexture(GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, pixel_0_width, pixel_0_height, pixel_0_size, pixel_0_data);
     runTest2D();
 }
+
+// Use this to select which configurations (e.g. which renderer, which GLES major version) these tests should be run against.
+ANGLE_INSTANTIATE_TEST(SwizzleTest, ES3_D3D11());
+
+} // namespace