diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2002-06-13 09:46:38 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2002-06-13 09:46:38 (GMT) |
commit | 7acca7516ab66ecbea898bbe3ab63c7f3ec7a030 (patch) | |
tree | a29cdada817e259a4baafaff04423689c93c390f /tests | |
parent | 8e366fbb8888c7c6e6ac0065b1392213b789ad0a (diff) | |
download | tk-7acca7516ab66ecbea898bbe3ab63c7f3ec7a030.zip tk-7acca7516ab66ecbea898bbe3ab63c7f3ec7a030.tar.gz tk-7acca7516ab66ecbea898bbe3ab63c7f3ec7a030.tar.bz2 |
Refixed cursor handling on Windows, and added tests to enforce it.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/cursor.test | 72 |
1 files changed, 48 insertions, 24 deletions
diff --git a/tests/cursor.test b/tests/cursor.test index 2d818c3..35a1d84 100644 --- a/tests/cursor.test +++ b/tests/cursor.test @@ -6,23 +6,19 @@ # Copyright (c) 1998-1999 by Scriptics Corporation. # All rights reserved. # -# RCS: @(#) $Id: cursor.test,v 1.3 2001/04/04 06:40:14 hobbs Exp $ +# RCS: @(#) $Id: cursor.test,v 1.4 2002/06/13 09:46:39 dkf Exp $ if {[lsearch [namespace children] ::tcltest] == -1} { source [file join [pwd] [file dirname [info script]] defs.tcl] } -if {[info commands testcursor] != "testcursor"} { - puts "testcursor command not available; skipping tests" - ::tcltest::cleanupTests - return -} +set ::tcltest::testConfig(testcursor) [llength [info commands testcursor]] eval destroy [winfo children .] wm geometry . {} raise . -test cursor-1.1 {Tk_AllocCursorFromObj - converting internal reps} { +test cursor-1.1 {Tk_AllocCursorFromObj - converting internal reps} {testcursor} { set x watch lindex $x 0 destroy .b1 @@ -30,7 +26,7 @@ test cursor-1.1 {Tk_AllocCursorFromObj - converting internal reps} { lindex $x 0 testcursor watch } {{1 0}} -test cursor-1.2 {Tk_AllocCursorFromObj - discard stale cursor} { +test cursor-1.2 {Tk_AllocCursorFromObj - discard stale cursor} {testcursor} { set x watch destroy .b1 .b2 button .b1 -cursor $x @@ -40,7 +36,7 @@ test cursor-1.2 {Tk_AllocCursorFromObj - discard stale cursor} { button .b2 -cursor $x lappend result [testcursor watch] } {{} {{1 1}}} -test cursor-1.3 {Tk_AllocCursorFromObj - reuse existing cursor} { +test cursor-1.3 {Tk_AllocCursorFromObj - reuse existing cursor} {testcursor} { set x watch destroy .b1 .b2 button .b1 -cursor $x @@ -59,8 +55,49 @@ test cursor-2.2 {Tk_GetCursor procedure} { destroy .b1 list [catch {button .b1 -cursor @xyzzy} msg] $msg } {1 {bad cursor spec "@xyzzy"}} +# Next two tests need a helper file with a very specific name and +# controlled format. +set wincur(data_octal) { + 000 000 002 000 001 000 040 040 000 000 007 000 007 000 060 001 + 000 000 026 000 000 000 050 000 000 000 040 000 000 000 100 000 + 000 000 001 000 001 000 000 000 000 000 000 000 000 000 000 000 + 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 + 000 000 377 377 377 000 000 000 000 000 000 000 000 000 000 000 + 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 + 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 + 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 + 000 000 000 000 000 000 000 000 000 000 160 016 000 000 170 036 + 000 000 174 076 000 000 076 174 000 000 037 370 000 000 017 360 + 000 000 007 340 000 000 007 340 000 000 017 360 000 000 037 370 + 000 000 076 174 000 000 174 076 000 000 170 036 000 000 160 016 + 000 000 000 000 000 000 377 377 377 377 377 377 377 377 377 377 + 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 + 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 + 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 + 377 377 377 377 377 377 017 360 377 377 007 340 377 377 003 300 + 377 377 001 200 377 377 200 001 377 377 300 003 377 377 340 007 + 377 377 360 017 377 377 360 017 377 377 340 007 377 377 300 003 + 377 377 200 001 377 377 001 200 377 377 003 300 377 377 007 340 + 377 377 017 360 377 377 +} +set wincur(data_binary) {} +foreach wincur(num) $wincur(data_octal) { + append wincur(data_binary) [binary format c 0$wincur(num)] +} +set wincur(dir) [::tcltest::makeDirectory {dir with spaces}] +set wincur(file) [::tcltest::makeFile $curdata "test file.cur" $wincur(dir)] +test cursor-2.3 {Tk_GetCursor procedure: cursor specs are lists} {pcOnly} { + destroy .b1 + button .b1 -cursor [list @$wincur(file)] +} {.b1} +test cursor-2.4 {Tk_GetCursor procedure: cursor specs are lists} {pcOnly} { + destroy .b1 + button .b1 -cursor @[regsub -all {[][ \\{}""$#]} $wincur(file) {\\&}] +} {.b1} +::tcltest::removeDirectory $wincur(dir) +unset wincur -test cursor-3.1 {Tk_FreeCursorFromObj - reference counts} { +test cursor-3.1 {Tk_FreeCursorFromObj - reference counts} {testcursor} { set x heart destroy .b1 .b2 .b3 button .b1 -cursor $x @@ -76,7 +113,7 @@ test cursor-3.1 {Tk_FreeCursorFromObj - reference counts} { lappend result [testcursor heart] } {{{3 1}} {{2 1}} {{1 1}} {}} -test cursor-4.1 {FreeCursorObjProc} { +test cursor-4.1 {FreeCursorObjProc} {testcursor} { destroy .b set x [format heart] button .b -cursor $x @@ -101,16 +138,3 @@ destroy .t # cleanup ::tcltest::cleanupTests return - - - - - - - - - - - - - |