lib/tests: fix tests and test list location
PATCH 1/5 lib/tests: fix tests and test list location
The igt_command_line.sh script was moved by commit 685e577 (Move library selftests to lib/tests), but the location of the tests and the test lists was not updated.
--- lib/tests/Makefile.am | 4 ++++ lib/tests/igt_command_line.sh | 18 ++++++++++++------ 2 files changed, 16 insertions(+), 6 deletions(-)
lib/tests/Makefile.am +4 -0
@@ -1,5 +1,9 @@ include Makefile.sources +AM_TESTS_ENVIRONMENT = \ + top_builddir=$(top_builddir) \ + top_srcdir=$(top_srcdir) + EXTRA_DIST = $(check_SCRIPTS) AM_CFLAGS = $(DRM_CFLAGS) $(CWARNFLAGS) \
lib/tests/igt_command_line.sh +12 -6
@@ -25,17 +25,23 @@ # Check that command line handling works consistently across all tests # -for test in `cat single-tests.txt multi-tests.txt`; do +TESTLIST=`cat $top_builddir/tests/single-tests.txt $top_builddir/tests/multi-tests.txt` +if [ $? -ne 0 ]; then + echo "Error: Could not read test lists" + exit 99 +fi + +for test in $TESTLIST; do if [ "$test" = "TESTLIST" -o "$test" = "END" ]; then continue fi - # if the test is a script, it will be in $srcdir - if [ ! -x $test ]; then - if [ -x $srcdir/$test ]; then - test=$srcdir/$test - fi + if [ -x $top_builddir/tests/$test ]; then + test=$top_builddir/tests/$test + else + # if the test is a script, it will be in $srcdir + test=$top_srcdir/tests/$test fi echo "$test:"
Signature · 6 lines
2.1.0 _______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx
PATCH 2/5 lib/tests: don't use hard error status to indicate test failure
--- lib/tests/igt_command_line.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
lib/tests/igt_command_line.sh +4 -4
@@ -48,20 +48,20 @@ for test in $TESTLIST; do # check invalid option handling echo " Checking invalid option handling..." - ./$test --invalid-option 2> /dev/null && exit 99 + ./$test --invalid-option 2> /dev/null && exit 1 # check valid options succeed echo " Checking valid option handling..." - ./$test --help > /dev/null || exit 99 + ./$test --help > /dev/null || exit 1 # check --list-subtests works correctly echo " Checking subtest enumeration..." ./$test --list-subtests > /dev/null if [ $? -ne 0 -a $? -ne 79 ]; then - exit 99 + exit 1 fi # check invalid subtest handling echo " Checking invalid subtest handling..." - ./$test --run-subtest invalid-subtest > /dev/null 2>&1 && exit 99 + ./$test --run-subtest invalid-subtest > /dev/null 2>&1 && exit 1 done
Signature · 6 lines
2.1.0 _______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [PATCH i-g-t 2/5] lib/tests: don't use hard error status to indicate test failure
Quoted 10 lines · Thomas Wood
Signed-off-by Thomas Wood <[email protected]>--- lib/tests/igt_command_line.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)lib/tests/igt_command_line.sh +0
-0
lib/tests/igt_command_line.sh for test in $TESTLIST; do · line 51
Quoted 5 lines
lib/tests/igt_command_line.sh +1
-1@@ -48,20 +48,20 @@ for test in $TESTLIST; do # check invalid option handling echo " Checking invalid option handling..." - ./$test --invalid-option 2> /dev/null && exit 99 + ./$test --invalid-option 2> /dev/null && exit 1
Just a curious question: What's better with hardcoding 1 than hardcoding 99? Otherwise series lgtm.
-Daniel
Signature · 7 lines
Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [PATCH i-g-t 2/5] lib/tests: don't use hard error status to indicate test failure
Quoted 12 lines · Daniel Vetter
Quoted 11 lines · Thomas Wood
Signed-off-by Thomas Wood <[email protected]>--- lib/tests/igt_command_line.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)lib/tests/igt_command_line.sh +0
-0@@ -48,20 +48,20 @@ for test in $TESTLIST; do
Quoted 7 lines
lib/tests/igt_command_line.sh for test in $TESTLIST; do · line 51
Quoted 4 lines
lib/tests/igt_command_line.sh +1
-1# check invalid option handling echo " Checking invalid option handling..." - ./$test --invalid-option 2> /dev/null && exit 99 + ./$test --invalid-option 2> /dev/null && exit 1Just a curious question: What's better with hardcoding 1 than hardcoding 99? Otherwise series lgtm.
From the automake manual:
"When no test protocol is in use, an exit status of 0 from a test script will denote a success, an exit status of 77 a skipped test, an exit status of 99 an hard error, and any other exit status will denote a failure."
So, an exit status of 99 is reported separately in the summary as an error, rather than as a test failure.
Quoted 9 lines
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [PATCH i-g-t 2/5] lib/tests: don't use hard error status to indicate test failure
Quoted 23 lines · Thomas Wood
Quoted 12 lines · Daniel Vetter
Quoted 11 lines · Thomas Wood
Signed-off-by Thomas Wood <[email protected]>--- lib/tests/igt_command_line.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)lib/tests/igt_command_line.sh +0
-0@@ -48,20 +48,20 @@ for test in $TESTLIST; doQuoted 7 lines
lib/tests/igt_command_line.sh for test in $TESTLIST; do · line 51
Quoted 4 lines
lib/tests/igt_command_line.sh +1
-1# check invalid option handling echo " Checking invalid option handling..." - ./$test --invalid-option 2> /dev/null && exit 99 + ./$test --invalid-option 2> /dev/null && exit 1Just a curious question: What's better with hardcoding 1 than hardcoding 99? Otherwise series lgtm.
From the automake manual:
Quoted 7 lines
"When no test protocol is in use, an exit status of 0 from a test script will denote a success, an exit status of 77 a skipped test, an exit status of 99 an hard error, and any other exit status will denote a failure."
So, an exit status of 99 is reported separately in the summary as an error, rather than as a test failure.
Ah, makes sense. Can you please add this bit of important information to the commit message before pushing?
Thanks, Daniel
Signature · 7 lines
Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx
PATCH 3/5 testdisplay: ensure invalid long option exit status is non-zero
In reply to Thomas WoodThe optopt variable is not set if an invalid long option is used, so check the current option character instead.
--- tests/testdisplay.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
tests/testdisplay.c +5 -5
@@ -545,7 +545,7 @@ int update_display(void)static char optstr[] ="3hiaf:s:d:p:mrto:j:" ; -static void __attribute__((noreturn))usage (char *name) +static void __attribute__((noreturn))usage (char *name,char opt) {igt_info ("usage: %s [-hiasdpmtf]\n" , name);igt_info ("\t-i\tdump info\n" );
@@ -563,7 +563,7 @@ static void __attribute__((noreturn)) usage(char *name)igt_info ("\t\t<vdisp>,<vsync-start>,<vsync-end>,<vtotal>\n" );igt_info ("\t\ttest force mode\n" );igt_info ("\tDefault is to test all modes.\n" ); -exit ((optopt) ?-1 :0 ); +exit ((opt !='h' ) ?-1 :0 ); }#define dump_resource (res) if (res) dump_##res()
@@ -665,7 +665,7 @@ int main(int argc, char **argv)if (sscanf (optarg,"%f,%hu,%hu,%hu,%hu,%hu,%hu,%hu,%hu" , &force_clock,&force_timing.hdisplay, &force_timing.hsync_start,&force_timing.hsync_end,&force_timing.htotal, &force_timing.vdisplay, &force_timing.vsync_start, &force_timing.vsync_end, &force_timing.vtotal)!=9 ) -usage (argv[0 ]); +usage (argv[0 ], c); force_timing.clock = force_clock*1000 ;break ;
@@ -685,7 +685,7 @@ int main(int argc, char **argv)if (sscanf (optarg,"%d,%d,%d,%d,%d,%d" , &plane_width, &plane_height, &crtc_x, &crtc_y, &crtc_w, &crtc_h) !=6 ) -usage (argv[0 ]); +usage (argv[0 ], c); test_plane =1 ;break ;case 'm' :
@@ -707,7 +707,7 @@ int main(int argc, char **argv)default :/* fall through */ case 'h' : -usage (argv[0 ]); +usage (argv[0 ], c);break ; } }
Signature · 6 lines
2.1.0 _______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx
PATCH 4/5 testdiplay: add a "--help" option
In reply to Thomas Wood--- tests/testdisplay.c | 1 + 1 file changed, 1 insertion(+)
tests/testdisplay.c +1 -0
@@ -642,6 +642,7 @@ int main(int argc, char **argv)struct option long_opts[] = { {"list-subtests" ,0 ,0 ,SUBTEST_OPTS }, {"run-subtest" ,1 ,0 ,SUBTEST_OPTS }, + {"help" ,0 ,0 ,'h' }, {0 ,0 ,0 ,0 } };
Signature · 6 lines
2.1.0 _______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx
PATCH 5/5 configure: fix issues when running outside the source tree
In reply to Thomas Wood--- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
configure.ac +1 -1
@@ -203,7 +203,7 @@ AC_DEFINE_UNQUOTED(TARGET_CPU_PLATFORM, ["$host_cpu"], [Target platform]) files="broadwell cherryview haswell ivybridge sandybridge valleyview skylake" for file in $files; do - QUICK_DUMP_EXTRA_DIST="$QUICK_DUMP_EXTRA_DIST $file `tr '\n' ' ' < tools/quick_dump/$file`" + QUICK_DUMP_EXTRA_DIST="$QUICK_DUMP_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/quick_dump/$file`" done AC_SUBST(QUICK_DUMP_EXTRA_DIST)
Signature · 6 lines
2.1.0 _______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx