On Tue, Jan 15, 2013 at 4:09 AM, Jordan Justen <[email protected]> wrote: > From: Kenneth Graunke <[email protected]> > > [[email protected]: use -minfmt rather than -id=77] > Signed-off-by: Jordan Justen <[email protected]> > --- > tests/es3conform.tests | 80 > ++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 80 insertions(+) > create mode 100644 tests/es3conform.tests > > diff --git a/tests/es3conform.tests b/tests/es3conform.tests > new file mode 100644 > index 0000000..b533bb7 > --- /dev/null > +++ b/tests/es3conform.tests > @@ -0,0 +1,80 @@ > +# > +# Permission is hereby granted, free of charge, to any person > +# obtaining a copy of this software and associated documentation > +# files (the "Software"), to deal in the Software without > +# restriction, including without limitation the rights to use, > +# copy, modify, merge, publish, distribute, sublicense, and/or > +# sell copies of the Software, and to permit persons to whom the > +# Software is furnished to do so, subject to the following > +# conditions: > +# > +# This permission notice shall be included in all copies or > +# substantial portions of the Software. > +# > +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY > +# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE > +# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR > +# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHOR(S) BE > +# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN > +# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF > +# OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER > +# DEALINGS IN THE SOFTWARE. > + > +import os > +import re > +import sys > + > +from os import path > +from glob import glob > +from framework.core import * > +from framework.exectest import * > + > +############################################################################# > +##### GTFTest: Execute a sub-test of the Khronos ES 3.0 Conformance suite. > +##### > +##### To use this, create a 'GTF3' symlink in piglit/bin which points to the > +##### Khronos 'GTF' executable. Piglit will automatically add all .test > +##### files into the 'gtf' category. > +############################################################################# > + > +if not path.exists(path.join(testBinDir, 'GTF3')): > + sys.exit(0) > + > +profile = TestProfile() > + > +# Chase the piglit/bin/GTF symlink to find where the tests really live. > +gtfroot = path.dirname(path.realpath(path.join(testBinDir, 'GTF3'))) > + > +class GTFTest(ExecTest): > + pass_re = re.compile(r'(Conformance|Regression) PASSED all > (?P<passed>\d+) tests') > + > + def __init__(self, testpath): > + ExecTest.__init__(self, [path.join(testBinDir, 'GTF3'), '-minfmt', > '-width=113', '-height=47', '-run=' + testpath]) > + > + def interpretResult(self, out, returncode, results): > + mo = self.pass_re.search(out) > + if mo is not None and int(mo.group('passed')) > 0: > + results['result'] = 'pass' > + else: > + results['result'] = 'fail' > + return out > + > +def populateTests(runfile): > + "Read a .run file, adding any .test files to the profile" > + with open(runfile, 'r') as f: > + for line in f.readlines(): > + # Ignore comments and whitespace > + line = line.strip() > + if line.startswith('#') or line == '': > + continue > + > + newpath = path.join(path.dirname(runfile), line) > + if line.endswith('.run'): > + populateTests(newpath) > + else: > + # Add the .test file > + profile.test_list['es3conform/' + path.relpath(newpath, > gtfroot)] = GTFTest(newpath) > + > + > +# Populate the group with all the .test files > +populateTests(path.join(gtfroot, 'mustpass_es30.run')) > -- > 1.7.10.4 > > _______________________________________________ > Piglit mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/piglit
Tested-by: Anuj Phogat <[email protected]> _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
