aboutsummaryrefslogtreecommitdiff
path: root/tests/event.test
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2013-07-22 10:29:42 +1000
committerSteve Bennett <steveb@workware.net.au>2013-07-22 10:46:20 +1000
commitc8df8ad4f5fed5a9c85498987e9b416e69fb3b44 (patch)
treeb68919687ad14c7496c009b42c3da28586ff4954 /tests/event.test
parent5ca6b7ff651246cec3a09a94fda36dc5872fa759 (diff)
downloadjimtcl-c8df8ad4f5fed5a9c85498987e9b416e69fb3b44.zip
jimtcl-c8df8ad4f5fed5a9c85498987e9b416e69fb3b44.tar.gz
jimtcl-c8df8ad4f5fed5a9c85498987e9b416e69fb3b44.tar.bz2
Ensure that signals can break vwait
The following should break when a handled signal is caught. catch -signal { vwait forever } Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'tests/event.test')
-rw-r--r--tests/event.test11
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/event.test b/tests/event.test
index e55d07b..b460227 100644
--- a/tests/event.test
+++ b/tests/event.test
@@ -14,6 +14,7 @@ source [file dirname [info script]]/testing.tcl
needs cmd after eventloop
testConstraint socket [expr {[info commands socket] ne ""}]
testConstraint exec [expr {[info commands exec] ne ""}]
+testConstraint signal [expr {[info commands signal] ne ""}]
test event-5.1 {Tcl_BackgroundError, HandleBgErrors procedures} jim {
catch {rename bgerror {}}
@@ -189,4 +190,14 @@ foreach i [after info] {
after cancel $i
}
+test event-13.1 "vwait/signal" signal {
+ signal handle ALRM
+ list [catch -signal {
+ alarm 0.1
+ # This is just to prevent the vwait from exiting immediately
+ stdin readable { puts "stdin is readable" }
+ vwait forever
+ } msg] $msg
+} {5 SIGALRM}
+
testreport