arb_shader_atomic_counters: Import common helper functions.

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Import GLSL parser tests.

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test the atomic counter query functions.

v2: Drop #define L, use a table instead of coding each test (changes
    by anholt, acked by Francisco)

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test dynamic indexing of atomic counter arrays.

v2: Drop #define L (changes by anholt, acked by Francisco)

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test the buffer binding API functions.

v2: Drop #define L (changes by anholt, acked by Francisco)

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test that atomics vs default uniform block.

v2: Drop #define L (changes by anholt, acked by Francisco)

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test atomic ops vs discard.

v2: Drop #define L (changes by anholt, acked by Francisco), don't make
    a big window when we don't draw to it.

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test atomic counters as function arguments.

v2: Don't make a big window when we don't draw to it, and just report
    the result from init() (changes by anholt, acked by Francisco).

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test shaders at and beyond the limits.

v2: Drop v3.1 check that's guaranteed by the test config, and add the
    0-minimum maximums to make sure that the getters are at least
    implemented (changes by anholt, acked by Francisco).

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test the minimum maximums defined by the spec.

v2: Drop v3.1 check that's guaranteed by the test config, and add the
    0-minimum maximums to make sure that the getters are at least
    implemented (changes by anholt, acked by Francisco).

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test linking with conflicting locations.

v2: Drop v3.1 check that's guaranteed by the test config, and drop the
    #define L.  (changes by anholt, acked by Francisco).

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test that atomic built-ins execute the expected operations on memory.

v2: Drop v3.1 check that's guaranteed by the test config, drop #define
    L, and report from init() since we don't draw to the screen.
    (changes by anholt, acked by Francisco).

Reviewed-by: Eric Anholt <eric@anholt.net>
arb_shader_atomic_counters: Test the atomicity of atomic built-in functions.

v2: Drop v3.1 check that's guaranteed by the test config, shrink the
    window, and report from init() since we don't draw to the screen.
    (changes by anholt, acked by Francisco).

Reviewed-by: Eric Anholt <eric@anholt.net>
Fix deprecation warnings from XKeycodeToKeysym().

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
arb_gpu_shader5: Rename `signed` to `test_signed`.

nVIDIA's compiler considers `signed` to be a reserved word and so
refuses to compile these shaders. Whether that's sensible or not,
we'd like to see any real failures in these tests instead.

V2: Use 'test_signed' rather than 'signed_'

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Replace end_config with 'end config' in glsl parser tests

The example glsl parser test doesn't list end_config as acceptable, and
there are only 5 tests using end_config, so it makes sense to just fix
those tests rather than generating slower more complicated regex for
handling end_config.

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
shader_tests_tests.py: Adds some tests for the shader_test module

This adds some additional tests for ShaderTest behavior. Some of these
tests fail because of dumb implementation details.

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
framework/shader_test.py: Remove standalone capability

Shader_test has a bizarre capability to be run as a standalone script as
well as be used as a module. This was probably useful when developing
the original shader_test implementation, but at this point it's unused
code just waiting to bit-rot adding needless complexity

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
framework/shader_test.py: simplify ShaderTest

This patch almost completely reworks ShaderTest. It was originally much
more complicated than was necessary, this code should be much easier to
work with, and removes some quirks. One of those was that ShaderTest
inherited from PlainExecTest, but used ExecTest's __init__ method, which
has implications for changing either of those classes.

v2: - remove shader_test_tests. This only had an initializer test, and
      that no longer applies since ShaderTest is now a function
v3: - Don't remove shader_test_tests
    - Keep ShaderTest as a class rather than function
    - make looping over test files more efficient
    - make errors more specific
    - make tests more precise

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
Adds some tests for glsl_parser_tests.py

These tests model future behavior rather than current behavior, some of
them pass, others fail.

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>