Make application_parameters tests fail without vendor-specific info

VK-GL-CTS issue: 4018

The "invalid_param_value" and "valid" test variants need vendor-specific
values to be added to the test case. Previously this reported "unsupported"
if the necessary values aren't added. It was believe this could be easily
missed by vendors, so changing this to an error as agreed.

Note that with this change, if an implementation supportsi
VK_EXT_application_parameters and does nothing else - there will be 4 failures.

Component: VulkanSC
Affects: dEQP-VKSC.sc.application_parameters.*

Change-Id: I76a1901cc15e0966ffdd00a817aebbeb72f7d019
diff --git a/external/vulkancts/modules/vulkan/sc/vktApplicationParametersTests.cpp b/external/vulkancts/modules/vulkan/sc/vktApplicationParametersTests.cpp
index 2a2d70a..00df519 100755
--- a/external/vulkancts/modules/vulkan/sc/vktApplicationParametersTests.cpp
+++ b/external/vulkancts/modules/vulkan/sc/vktApplicationParametersTests.cpp
@@ -125,45 +125,58 @@
 
 	readIDsFromDevice(context, vendorId, deviceId);
 
+//#define VENDOR_PARAMS_ADDED 1
+#if defined(VENDOR_PARAMS_ADDED)
+	uint32_t validVendorID = vendorId;
+	uint32_t validDeviceID = deviceId;
+	uint32_t validInstanceParamKey = 0;		// TODO: provide valid instance parameter key
+	uint64_t invalidInstanceParamValue = 0;	// TODO: provide invalid parameter value for <validInstanceParamKey>
+	uint64_t validInstanceParamValue = 0;	// TODO: provide valid parameter value for <validInstanceParamKey>
+	uint32_t validDeviceParamKey = 0;		// TODO: provide valid device parameter key
+	uint64_t invalidDeviceParamValue = 0;	// TODO: provide invalid parameter value for <validDeviceParamKey>
+	uint64_t validDeviceParamValue = 0;		// TODO: provide valid parameter value for <validDeviceParamKey>
+#endif
+
 	const std::vector<TestData> vendorTestDataList =
 	{
 		//	The invalid param value and valid tests need to use vendor-specific application
 		//	parameter keys and values. In order to have full test coverage, vendors should
 		//	provide their own test data for the invalid param value and valid tests here.
-		//	For example:
 		//
-		//	{
-		//		{ INSTANCE, INVALID_PARAM_VALUE },
-		//		validVendorID,
-		//		validDeviceID,
-		//		validParamKey,
-		//		invalidParamValue,
-		//		VK_ERROR_INITIALIZATION_FAILED
-		//	},
-		//	{
-		//		{ INSTANCE, VALID },
-		//		validVendorID,
-		//		validDeviceID,
-		//		validParamKey,
-		//		validParamValue,
-		//		VK_SUCCESS
-		//	},
-		//	{
-		//		{ DEVICE, INVALID_PARAM_VALUE },
-		//		validVendorID,
-		//		validDeviceID,
-		//		validParamKey,
-		//		invalidParamValue,
-		//		VK_ERROR_INITIALIZATION_FAILED
-		//	},
-		//	{
-		//		{ DEVICE, VALID },
-		//		validVendorID,
-		//		validDeviceID,
-		//		validParamKey,
-		//		validParamValue,
-		//		VK_SUCCESS
-		//	}
+#if defined(VENDOR_PARAMS_ADDED)
+		{
+			{ INSTANCE, INVALID_PARAM_VALUE },
+			validVendorID,
+			validDeviceID,
+			validInstanceParamKey,
+			invalidInstanceParamValue,
+			VK_ERROR_INITIALIZATION_FAILED
+		},
+		{
+			{ INSTANCE, VALID },
+			validVendorID,
+			validDeviceID,
+			validInstanceParamKey,
+			validInstanceParamValue,
+			VK_SUCCESS
+		},
+		{
+			{ DEVICE, INVALID_PARAM_VALUE },
+			validVendorID,
+			validDeviceID,
+			validDeviceParamKey,
+			invalidDeviceParamValue,
+			VK_ERROR_INITIALIZATION_FAILED
+		},
+		{
+			{ DEVICE, VALID },
+			validVendorID,
+			validDeviceID,
+			validDeviceParamKey,
+			validDeviceParamValue,
+			VK_SUCCESS
+		}
+#endif // defined(VENDOR_PARAMS_ADDED)
 	};
 
 	if (testParams.testType != INVALID_PARAM_VALUE && testParams.testType != VALID)
@@ -193,7 +206,7 @@
 	const std::vector<TestData> testDataList = getTestDataList(context, testParams);
 
 	if (testDataList.empty())
-		TCU_THROW(NotSupportedError, "No test data available");
+		TCU_THROW(TestError, "No test data available - please update vendorTestDataList");
 }
 
 tcu::TestStatus createDeviceTest (Context& context, TestParams testParams)