dialog.test
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:2k
源码类别:

通讯编程

开发平台:

Visual C++

  1. # This file is a Tcl script to test out Tk's "tk_dialog" command.
  2. # It is organized in the standard fashion for Tcl tests.
  3. #
  4. # RCS: @(#) $Id: dialog.test,v 1.3 2002/07/14 05:48:46 dgp Exp $
  5. #
  6. package require tcltest 2.1
  7. namespace import -force tcltest::configure
  8. namespace import -force tcltest::testsDirectory
  9. configure -testdir [file join [pwd] [file dirname [info script]]]
  10. configure -loadfile [file join [testsDirectory] constraints.tcl]
  11. tcltest::loadTestedCommands
  12. test dialog-1.1 {tk_dialog command} {
  13.     list [catch {tk_dialog} msg] $msg
  14. } {1 {wrong # args: should be "tk_dialog w title text bitmap default args"}}
  15. test dialog-1.2 {tk_dialog command} {
  16.     list [catch {tk_dialog foo foo foo foo foo} msg] $msg
  17. } {1 {bad window path name "foo"}}
  18. test dialog-1.3 {tk_dialog command} {
  19.     set res [list [catch {tk_dialog .d foo foo foo foo} msg] $msg]
  20.     destroy .d
  21.     set res
  22. } {1 {bitmap "foo" not defined}}
  23. proc PressButton {btn} {
  24.     if {![winfo ismapped $btn]} {
  25. update
  26.     }
  27.     event generate $btn <Enter>
  28.     event generate $btn <1> -x 5 -y 5
  29.     event generate $btn <ButtonRelease-1> -x 5 -y 5
  30. }
  31. proc HitReturn {w} {
  32.     event generate $w <Enter>
  33.     focus -force $w
  34.     event generate $w <KeyPress> -keysym Return
  35. }
  36. test dialog-2.0 {tk_dialog operation} {
  37.     set x [after 5000 [list set tk::Priv(button) "no response"]]
  38.     after 100 PressButton .d.button0
  39.     set res [tk_dialog .d foo foo info 0 click]
  40.     after cancel $x
  41.     set res
  42. } {0}
  43. test dialog-2.1 {tk_dialog operation} {
  44.     set x [after 5000 [list set tk::Priv(button) "no response"]]
  45.     after 100 HitReturn .d
  46.     set res [tk_dialog .d foo foo info 1 click default]
  47.     after cancel $x
  48.     set res
  49. } {1}
  50. test dialog-2.2 {tk_dialog operation} {
  51.     set x [after 5000 [list set tk::Priv(button) "no response"]]
  52.     after 100 destroy .d
  53.     set res [tk_dialog .d foo foo info 0 click]
  54.     after cancel $x
  55.     set res
  56. } {-1}
  57. tcltest::cleanupTests
  58. return