summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-11-13v3: Fix GLSLParserTest and ShaderTest. They both derive fromwipDaniel Vetter2-0/+2
PlainExecTest but only call the __init__ function of the Test baseclass. I haven't really figured why this is and also not really what command I should pass to PlainExecTest.__init__, so just replicated the init code for now.
2013-11-13fixup for timeoutDaniel Vetter2-14/+30
v2: Also add all the boilerplate needed to handle the new test status in summaries. For the color I've opted for two shades of light blue, they nicely stick out from the current selection.
2013-11-13igt: timeout tests by default after 20 minutesDaniel Vetter1-0/+1
I bit gross, we probably need more fine-grained limits for thrashing/swapping tests vs. others. But at least a start.
2013-11-13framework: Add support for a test timeoutDaniel Vetter1-3/+25
i-g-t tests can take a long time, and for a bunch of reasons (bad tuning on disparate set of platforms, stuck in the kernel which often can be recovered by interrupting with a signal, ...) that sometimes extends to a good approximation of forever. Hence this adds a per-test timeout value and a bit of infrastructure to adjust the results. Test results adjusting is done after calling interpretResult so that we don't have to replicate this all over the place. This might need to be adjusted for the piglit-native subtest stuff, but otoh igt is a bit special with it's crazy long-running tests. So I think we can fix this once it's actually needed. The default timeout is None, so this is purely opt-in. Note on the implementation: SIG_ALARM doesn't exists on Windows and stackoverflow overwhelmingly recommended to go with this thread-based approach here. But only tested on my Linux box here.
2013-11-13igt: re-indent to get rid of tabsDaniel Vetter1-33/+33
I so failed at my python setup when doing this way back (less than a year ago). Reviewed-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-11-13igt: Enable dmesg checking by defaultDaniel Vetter1-0/+3
An awful lot of tests rely on in-kernel checks to detect issues. So we better make them fail properly. Note that the dmesg check relies on dmesg timestamps to work correctly. If you don't have them it won't work. Cc: Paulo Zanoni <przanoni@gmail.com>
2013-11-13framework: Ignore info/debug dmesg outputDaniel Vetter1-1/+1
i-g-t has a bunch of testcase that cause informational output. In addition I usually enable drm debugging on my machines, so the kms tests cause massive amounts of spew. I've thought whether an option would be useful, but then I didn't really see any reason why we should ever care about debug/info messages. Hence the default. Cc: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2013-11-12More tests for vs-fs interface block matching rules.Paul Berry5-0/+282
Note: as of Mesa 5cb80f0, tests "interface-vs-array-to-fs-unnamed" and "interface-vs-unnamed-to-fs-array" are known to fail. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-12More tests for vs-gs interface block array matching rules.Paul Berry2-0/+129
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-12Fix improperly-named geometry shader tests.Paul Berry1-11/+14
Several geometry shader tests were improperly added to all.tests with names like "spec/glsl-1.50/glsl-1.50-geometry-foo" instead of "spec/glsl-1.50/execution/geometry/foo". This patch renames the tests to follow our usual piglit conventions. Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
2013-11-12ARB_viewport_array: declare array with constant sizeBrian Paul1-11/+13
And fix some warnings. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71513
2013-11-12arb_gpu_shader5: add compiler tests for interpolateAt*Chris Forbes12-0/+310
Signed-off-by: Chris Forbes <chrisf@ijw.co.nz> Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
2013-11-11CL: Fix memory leak in program-tester.cAaron Watry1-0/+2
Compiled regexes have to be freed with regfree. Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
2013-11-11Test a corner case involving arrays, structs, and interface blocks.Paul Berry1-0/+54
This patch exercises the same corner case as https://bugs.freedesktop.org/show_bug.cgi?id=70368. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11gs: Test redeclaring either gl_PerVertex in or out, and using both.Paul Berry2-0/+108
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11gs: Fix geometry layout case insensitivity tests.Paul Berry3-0/+5
These tests use check_link: true, which means that they each need to specify a complete set of geometry shader layout qualifiers in order to pass. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11gs: Test that gl_MaxGeometryInputComponents can actually be achieved.Paul Berry1-0/+66
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11Test the "centroid" qualifier inside of interface blocks.Paul Berry3-0/+287
Validated using the NVIDIA proprietary driver for Linux (version 313.18). Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11Test interpolation qualifiers inside of interface blocks.Paul Berry3-0/+247
Validated using the NVIDIA proprietary driver for Linux (version 313.18). Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11Check that transform feedback size/type comes from gs, not vs.Paul Berry3-0/+229
When the current program has both a geometry shader and a vertex shader, transform feedback needs to link with the geometry shader. This test verifies that the type and size of the varyings captured by transform feedback match their declarations in the geometry shader, even if there are vertex shader outputs with the same names and different types. The test exercises one built-in shader output (gl_ClipDistance) and one user-defined shader output. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11Rename and clarify interface-blocks-vs-gs-array-size-mismatch.shader_test.Paul Berry2-41/+52
The test was correct, but not for the reasons stated in the comment. The reason a sized VS output interface array should fail to match an unsized GS input interface array is because geometry shader inputs require an extra level of array indexing to match corresponding vertex shader outputs. This patch renames the test, and updates the comment, to reflect what's actually being tested. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11Test intrastage interface block array matching rules.Paul Berry3-0/+136
Note: as of Mesa 5cb80f0, test "intrastage-interface-unnamed-array" is known to fail. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11Add a "slow_cc" option to EXT_framebuffer_multisample/alpha-blending.Paul Berry2-2/+16
When fast color clears are added to i965, there is a danger that they may cause this test to stop reproducing bug 53077. To avoid that, add a command-line option which causes the test to use a clear color that isn't fast color clearable. As a result of this patch, a new piglit test is added: "spec/EXT_framebuffer_multisample/alpha-blending slow_cc". As of Mesa commit fd05ede, this test is known to fail on Ivy Bridge and Haswell. These failures are already covered by bug 53077. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-11-11ARB_viewport_array: rename 'near' and 'far' vars for WindowsBrian Paul1-3/+3
2013-11-11ARB_viewport_array: Rendering test with multiple scissor rectangles/enablesJon Ashburn3-0/+251
Tests rendering into a single framebuffer surface with multiple viewports via a geometry shader. Scissoring is used to restrict quads to a smaller area on the surface. Confirm that each area of the surface delineated by a scissor rectangle for viewport index renders the correct color. Both indexed scissor tests and indexed scissor enables are used. Geometry shader is used to expand a single rectangle primitve to N rectangles. Tested on Nvidia Quadro 600, test passes. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11ARB_viewport_array: Rendering test with multiple depthrangesJon Ashburn3-0/+199
Draws quads into a single framebuffer surface with multiple viewports via a geometry shader. Each different viewport has a different DepthRange. The fragment shader outputs a color based on the depthRange, z, and viewport index. Confirm that each quad has the correct color and therefore has the correct depthRange for that viewport index. Tested on Nvidia Quadro 600, test passes. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11ARB_viewport_array: Rendering test with multiple viewportsJon Ashburn3-0/+171
Tests rendering into a single framebuffer surface with multiple viewports via a geometry shader. Confirm that each area of the surface delineated by a viewport renders the correct color. Use multiple draw calls to replicate geometry rather than the geometry shader. Tested on Nvidia Quadro 600, test passes. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11ARB_viewport_array: Test min/max values for new implementation constantsJon Ashburn3-0/+122
Tested GLenums are GL_MAX_VIEWPORT_DIMS, GL_MAX_VIEWPORTS, GL_VIEWPORT_SUBPIXEL_BITS, GL_VIEWPORT_BOUNDS_RANGE, GL_LAYER_PROVOKING_VERTEX, GL_VIEWPORT_INDEX_PROVOKING_VERTEX. Tested on Nvidia Quadro 600, test passes. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11ARB_viewport_array: Test validity for glGetFloati_v and glGetDoublei_vJon Ashburn3-0/+162
Test valid and invalid queries using glGetFLoati_v and glGetDoublei_v. Also test correct queries of GL_SCISSOR_TEST default value and settable values. Tested on Nvidia Quadro 600 and all tests pass. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11ARB_viewport_array: Test validity of bounds for viewport, depthRange, scissorJon Ashburn3-0/+272
Tests for the validity of Viewport bounds, Depth Range bounds and Scissor Box bounds with viewport arrays (0 to GL_MAX_VIEWPORTS-1). "Bounds" refer to the bounding rectangle or range (eg x, y, width, height). Tested with Nvidia Quadro 600. All tests pass except Scissor Box with a negative height fails to return a gl error. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11ARB_viewport_array: Validity test for scissor index related paramsJon Ashburn3-0/+160
Tests GL_ARB_viewport_array validity for indices. Use both valid and invalid parameters (index, first, count) for these new API entry points: glScissorArrayv, glScissorIndexed, glScissorIndexedv. Also test SCISSOR_TEST indices with glEnablei and others. Tested on Nvidia Quadro 600 all test cases pass except for invalid indices with glIsEnabledi(GL_SCISSOR_TEST,...). Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11ARB_viewport_array: Validity test for depth range index/first/count paramsJon Ashburn3-0/+154
Tests GL_ARB_viewport_array validity for indices. Use both valid and invalid parameters (index, first, count) for all these new API entry points: glDepthRangeArrayv, glDepthRangeIndexed, glGetDoublei_v. Tested on Nvidia Quadro 600 all tests pass. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11ARB_viewport_array: Validity test for viewport index/first/count paramsJon Ashburn5-0/+245
Tests GL_ARB_viewport_array regarding the validity for the indices. Use both valid and invalid parameters (index, first, count) for these new API entry points: glViewportArrayv, glViewportIndexedf, glViewportIndexedfv, glGetFloati_v. Also test that writing to an invalid viewport index for Viewport, DepthRange, Scissor Box, Scissor Test does not modify any of the state for the valid range of indices. Tested on Nvidia Quadro 600 all tests pass. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Jon Ashburn <jon@lunarg.com>
2013-11-11fbo-drawbuffers-maxtargets: use different colors for different buffersBrian Paul1-12/+51
Before, the test always drew green rects for all the target buffers. Now we draw a different color into each buffer to be more thorough. Plus, replace 16 with MAX_TARGETS, add some comments, etc. Note: the test now fails with Mesa's swrast because swrast errantly writes the same color to all render targets.
2013-11-11glsl-1.10: test that redeclaring a variable with a different type is illegalBrian Paul1-0/+29
This passes w/ Mesa but crashes NVIDIA's driver.
2013-11-05fbo-blit-scaled-linear: Require GLSL 1.30.Vinson Lee1-0/+1
Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Paul Berry <stereotype441@gmail.com>
2013-11-05ext_framebuffer_multisample: Initialize Test::filter_mode.Vinson Lee1-1/+2
Fixes "Uninitialized scalar field" reported by Coverity. Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Paul Berry <stereotype441@gmail.com>
2013-11-05glsl-1.20: Print generated outerProduct test names.Matt Turner2-0/+4
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-11-05glsl-1.10 / glsl-1.20: Print generated variable-index test names.Matt Turner2-32/+96
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-11-05shaders: Stop using ortho in glsl-const tests.Matt Turner70-350/+140
Scripted with sed with fix ups to - not - actually writes .w component, so probe rgba. - reflect - writes const 1.0 .w component, so probe rgb. - cosh - writes const 1.0 .w component, and used probe rgb with 4 components, so drop the .w from the probe. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-11-05shaders: Remove #version from glsl-const tests.Matt Turner70-76/+2
Also basically a revert of 6533d757 to make the cosh test match. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-11-05glsl-1.10: Delete bogus generated test.Matt Turner1-97/+0
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-11-05framework: use os.path instead of manual path managementDylan Baker6-14/+15
Working with paths is hard, and we don't always do it right. Instead of trying to be perfect, just use python's os.path module to do all of the hard work for us Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-11-05summary-html: Add Environment to HTML pagesDylan Baker2-0/+13
Specifically for glean tests setting certain environment variables are needed to run a certain subtest in glean. This patch prints that in the HTML results. Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-11-04Test that the fs gl_PrimitiveID input works even when there's no gs.Paul Berry1-0/+60
For i965/gen7 hardware, the driver has to go to extra work to make gl_PrimitiveID work in the case where there is no geometry shader. So we need a separate test to make sure that works properly. Reviewed-by: Eric Anholt <eric@anholt.net>
2013-11-04Change INVALID_VALUE to INVALID_OPERATION in ARB_vertex_array_bgra test.Kenneth Graunke1-12/+6
In the OpenGL 3.3 specification, this changed from INVALID_VALUE to INVALID_OPERATION. According to Ian Romanick, the GL specification provides the guidance that INVALID_VALUE should be generated for "Numeric argument out of range". Since FALSE is in range for a boolean, INVALID_VALUE is not appropriate, and the change to INVALID_OPERATION was meant as a correction. See: http://lists.freedesktop.org/archives/mesa-dev/2013-July/042509.html Most implementations support 3.3, so they likely follow the new code. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Cc: Ian Romanick <idr@freedesktop.org> Cc: Fredrik Höglund <fredrik@kde.org> Cc: Corey Richardson <corey@octayn.net>
2013-11-04hiz: Use default window sizeChad Versace8-24/+0
All the hiz tests requested a 400x400 window. Instead, don't specify window size and let Piglit choose it. This significantly speeds up their execution time. Signed-off-by: Chad Versace <chad.versace@linux.intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-11-04HACKING: Add note for python formattingDylan Baker1-0/+6
Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-11-04arb_separate_shader_objects: silence string format warningBrian Paul1-2/+2
2013-11-04arb_uniform_buffer_object: silence asprintf() warningBrian Paul1-2/+2