diff options
Diffstat (limited to 'testsuite')
-rw-r--r-- | testsuite/runtest.main/nested/testsuite/pr53427.test/a.exp | 34 | ||||
-rw-r--r-- | testsuite/runtest.main/nested/testsuite/pr53427.test/b.exp | 23 | ||||
-rw-r--r-- | testsuite/runtest.main/pr53427.exp | 55 |
3 files changed, 112 insertions, 0 deletions
diff --git a/testsuite/runtest.main/nested/testsuite/pr53427.test/a.exp b/testsuite/runtest.main/nested/testsuite/pr53427.test/a.exp new file mode 100644 index 0000000..bcb679e --- /dev/null +++ b/testsuite/runtest.main/nested/testsuite/pr53427.test/a.exp @@ -0,0 +1,34 @@ +# Copyright (C) 2022 Free Software Foundation, Inc. +# +# This file is part of DejaGnu. +# +# DejaGnu is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# DejaGnu is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with DejaGnu; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + +# Regression test for PR53427; first test file. + +pass "test 1" + +pass "test 2" + +switch -- $MODE { + error { + perror "something went very wrong" + } + warning { + for {set i 0} { $i < [get_warning_threshold] } { incr i } { + warning "something went wrong" + } + } +} diff --git a/testsuite/runtest.main/nested/testsuite/pr53427.test/b.exp b/testsuite/runtest.main/nested/testsuite/pr53427.test/b.exp new file mode 100644 index 0000000..4481350 --- /dev/null +++ b/testsuite/runtest.main/nested/testsuite/pr53427.test/b.exp @@ -0,0 +1,23 @@ +# Copyright (C) 2022 Free Software Foundation, Inc. +# +# This file is part of DejaGnu. +# +# DejaGnu is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# DejaGnu is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with DejaGnu; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + +# Regression test for PR53427; second test file. + +pass "test 3" + +pass "test 4" diff --git a/testsuite/runtest.main/pr53427.exp b/testsuite/runtest.main/pr53427.exp new file mode 100644 index 0000000..189c82f --- /dev/null +++ b/testsuite/runtest.main/pr53427.exp @@ -0,0 +1,55 @@ +# Copyright (C) 2022 Free Software Foundation, Inc. +# +# This file is part of DejaGnu. +# +# DejaGnu is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# DejaGnu is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with DejaGnu; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + +# This file is a regression test for PR53427, where the running count of +# errors (and warnings) propagates from one test file to the next. This +# causes the first test in the second file to be spuriously UNRESOLVED. + +runtest_setup_nested_testsuite + +proc test_pr53427 {} { + global RUNTEST + + foreach test_mode {error warning} { + set result unresolved + set pass_count 0 + set cmd_args [list --local_init nested-init.exp --tool pr53427 \ + -a MODE=$test_mode] + + verbose -log "Spawning $RUNTEST $cmd_args ..." + eval [list spawn $RUNTEST] $cmd_args + expect { + -re { of expected passes[[:space:]]+([[:digit:]]+)[\r\n]+} { + set pass_count $expect_out(1,string) + exp_continue + } + -re { of unresolved testcases} { + set result fail + exp_continue + } + } + # Were the expected number of passed tests reported? + if { $result eq "unresolved" && $pass_count == 4 } { set result pass } + # emit test result + $result "PR53427 test for $test_mode isolation between test files" + } +} + +test_pr53427 + +runtest_cleanup_nested_testsuite |