dEQP-GLES31.functional.ssbo.layout.random.*: Add check for GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS

Commit 237916d03377a469e30dd36087738b069f83a19a
(gles31:es31fSSBOLayoutTests limit m_maxBlocks and m_maxBlockMembers
for low ram device) disturbs the random number generator for this set
of tests.

This CL adds additional check to mark a test case as unsupported when
applicable.

Bug: 125999156
Test: dEQP-GLES31.functional.ssbo.layout.random.all_per_block_buffers#45
Change-Id: I82f4ff846d9ac1389b51687f330ce8233d4856b7
diff --git a/modules/gles31/functional/es31fSSBOLayoutCase.cpp b/modules/gles31/functional/es31fSSBOLayoutCase.cpp
index a9e0e6e..3665383 100644
--- a/modules/gles31/functional/es31fSSBOLayoutCase.cpp
+++ b/modules/gles31/functional/es31fSSBOLayoutCase.cpp
@@ -1286,10 +1286,12 @@
 {
 	std::ostringstream src;
 	glw::GLint maxShaderStorageBufferBindings;
+	glw::GLint maxComputeShaderStorageBlocks;
 
 	DE_ASSERT(glslVersion == glu::GLSL_VERSION_310_ES || glslVersion == glu::GLSL_VERSION_430);
 
 	gl.getIntegerv(GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, &maxShaderStorageBufferBindings);
+	gl.getIntegerv(GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS, &maxComputeShaderStorageBlocks);
 
 	src << glu::getGLSLVersionDeclaration(glslVersion) << "\n";
 	src << "layout(local_size_x = 1) in;\n";
@@ -1315,6 +1317,10 @@
 		{
 			throw tcu::NotSupportedError("Test requires support for more SSBO bindings than implementation exposes");
 		}
+		if (bindingPoint > maxComputeShaderStorageBlocks)
+		{
+			throw tcu::NotSupportedError("Test requires support for more compute shader storage blocks than implementation exposes");
+		}
 	}
 
 	// Atomic counter for counting passed invocations.