Require standardSampleLocations for imageless fb resolve tests
authorGary Sweet <gsweet@broadcom.com>
Wed, 11 Sep 2019 10:44:27 +0000 (11:44 +0100)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Mon, 16 Sep 2019 06:34:59 +0000 (02:34 -0400)
The resolve tests require known sample locations in order to check
the results. If standardSampleLocations is not supported, report
these tests as unsupported.

Affects: dEQP-VK.imageless_framebuffer.*

Components: Vulkan

VK-GL-CTS issue: 1987

Change-Id: I4dbec37df8606ecb994d3b343dee42c5dee6738d

external/vulkancts/modules/vulkan/imageless_framebuffer/vktImagelessFramebufferTests.cpp

index 3d4091f..4ad4e05 100644 (file)
@@ -2362,6 +2362,7 @@ public:
        virtual                                 ~BaseTestCase   (void);
 
 protected:
+       virtual void                    checkSupport    (Context& context) const;
        virtual void                    initPrograms    (SourceCollections& programCollection) const;
        virtual TestInstance*   createInstance  (Context& context) const;
 
@@ -2378,6 +2379,15 @@ BaseTestCase::~BaseTestCase ()
 {
 }
 
+void BaseTestCase::checkSupport (Context& context) const
+{
+       if (m_parameters.testType == TEST_TYPE_COLOR_RESOLVE || m_parameters.testType == TEST_TYPE_DEPTH_STENCIL_RESOLVE)
+       {
+               if (!context.getDeviceProperties().limits.standardSampleLocations)
+                       TCU_THROW(NotSupportedError, "Non-standard sample locations are not supported");
+       }
+}
+
 void BaseTestCase::initPrograms (SourceCollections& programCollection) const
 {
        // Vertex shader