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

通讯编程

开发平台:

Visual C++

  1. # This file is a Tcl script to test out the procedures in the file
  2. # tkBorder.c.  It is organized in the standard fashion for Tcl tests.
  3. #
  4. # Copyright (c) 1998 Sun Microsystems, Inc.
  5. # Copyright (c) 1998-1999 by Scriptics Corporation.
  6. # All rights reserved.
  7. #
  8. # RCS: @(#) $Id: border.test,v 1.3 2002/07/14 05:48:46 dgp Exp $
  9. package require tcltest 2.1
  10. namespace import -force tcltest::configure
  11. namespace import -force tcltest::testsDirectory
  12. configure -testdir [file join [pwd] [file dirname [info script]]]
  13. configure -loadfile [file join [testsDirectory] constraints.tcl]
  14. tcltest::loadTestedCommands
  15. testConstraint testborder [llength [info commands testborder]]
  16. if {[testConstraint pseudocolor8]} {
  17.     toplevel .t -visual {pseudocolor 8} -colormap new
  18.     wm geom .t +0+0
  19. }
  20. test border-1.1 {Tk_AllocBorderFromObj - converting internal reps} testborder {
  21.     set x orange
  22.     lindex $x 0
  23.     destroy .b1
  24.     button .b1 -bg $x -text .b1
  25.     lindex $x 0
  26.     testborder orange
  27. } {{1 0}}
  28. test border-1.3 {Tk_AllocBorderFromObj - discard stale border} testborder {
  29.     set x orange
  30.     destroy .b1 .b2
  31.     button .b1 -bg $x -text First
  32.     destroy .b1
  33.     set result {}
  34.     lappend result [testborder orange]
  35.     button .b2 -bg $x -text Second
  36.     lappend result [testborder orange]
  37. } {{} {{1 1}}}
  38. test border-1.2 {Tk_AllocBorderFromObj - reuse existing border} testborder {
  39.     set x orange
  40.     destroy .b1 .b2
  41.     button .b1 -bg $x -text First
  42.     set result {}
  43.     lappend result [testborder orange]
  44.     button .b2 -bg $x -text Second
  45.     pack .b1 .b2 -side top
  46.     lappend result [testborder orange]
  47. } {{{1 1}} {{2 1}}}
  48. test border-1.4 {Tk_AllocBorderFromObj - try other borders in list} {pseudocolor8 testborder} {
  49.     set x purple
  50.     destroy .b1 .b2 .t.b
  51.     button .b1 -bg $x -text First
  52.     pack .b1 -side top
  53.     set result {}
  54.     lappend result [testborder purple]
  55.     button .t.b -bg $x -text Second
  56.     pack .t.b -side top
  57.     lappend result [testborder purple]
  58.     button .b2 -bg $x -text Third
  59.     pack .b2 -side top
  60.     lappend result [testborder purple]
  61. } {{{1 1}} {{1 1} {1 0}} {{1 0} {2 1}}}
  62. test border-3.1 {Tk_Free3DBorder - reference counts} {pseudocolor8 testborder} {
  63.     set x purple
  64.     destroy .b1 .b2 .t.b
  65.     button .b1 -bg $x -text First
  66.     pack .b1 -side top
  67.     button .t.b -bg $x -text Second
  68.     pack .t.b -side top
  69.     button .b2 -bg $x -text Third
  70.     pack .b2 -side top
  71.     set result {}
  72.     lappend result [testborder purple]
  73.     destroy .b1
  74.     lappend result [testborder purple]
  75.     destroy .b2
  76.     lappend result [testborder purple]
  77.     destroy .t.b
  78.     lappend result [testborder purple]
  79. } {{{1 0} {2 1}} {{1 0} {1 1}} {{1 0}} {}}
  80. test border-3.4 {Tk_Free3DBorder - unlinking from list} {pseudocolor8 testborder} {
  81.     destroy .b .t.b .t2 .t3
  82.     toplevel .t2 -visual {pseudocolor 8} -colormap new
  83.     toplevel .t3 -visual {pseudocolor 8} -colormap new
  84.     set x purple
  85.     button .b -bg $x -text .b1
  86.     button .t.b1 -bg $x -text .t.b1
  87.     button .t.b2 -bg $x -text .t.b2
  88.     button .t2.b1 -bg $x -text .t2.b1
  89.     button .t2.b2 -bg $x -text .t2.b2
  90.     button .t2.b3 -bg $x -text .t2.b3
  91.     button .t3.b1 -bg $x -text .t3.b1
  92.     button .t3.b2 -bg $x -text .t3.b2
  93.     button .t3.b3 -bg $x -text .t3.b3
  94.     button .t3.b4 -bg $x -text .t3.b4
  95.     set result {}
  96.     lappend result [testborder purple]
  97.     destroy .t2
  98.     lappend result [testborder purple]
  99.     destroy .b
  100.     lappend result [testborder purple]
  101.     destroy .t3
  102.     lappend result [testborder purple]
  103.     destroy .t
  104.     lappend result [testborder purple]
  105. } {{{4 1} {3 0} {2 0} {1 0}} {{4 1} {2 0} {1 0}} {{4 1} {2 0}} {{2 0}} {}}
  106. test border-4.1 {FreeBorderObjProc} testborder {
  107.     destroy .b
  108.     set x [format purple]
  109.     button .b -bg $x -text .b1
  110.     set y [format purple]
  111.     .b configure -bg $y
  112.     set z [format purple]
  113.     .b configure -bg $z
  114.     set result {}
  115.     lappend result [testborder purple]
  116.     set x red
  117.     lappend result [testborder purple]
  118.     set z 32
  119.     lappend result [testborder purple]
  120.     destroy .b
  121.     lappend result [testborder purple]
  122.     set y bogus
  123.     set result
  124. } {{{1 3}} {{1 2}} {{1 1}} {}}
  125. catch {destroy .b}
  126. button .b
  127. test get-2.1 {Tk_GetReliefFromObj} {
  128.     .b configure -relief flat
  129.     .b cget -relief
  130. } {flat}
  131. test get-2.2 {Tk_GetReliefFromObj} {
  132.     .b configure -relief groove
  133.     .b cget -relief
  134. } {groove}
  135. test get-2.3 {Tk_GetReliefFromObj} {
  136.     .b configure -relief raised
  137.     .b cget -relief
  138. } {raised}
  139. test get-2.3 {Tk_GetReliefFromObj} {
  140.     .b configure -relief ridge
  141.     .b cget -relief
  142. } {ridge}
  143. test get-2.3 {Tk_GetReliefFromObj} {
  144.     .b configure -relief solid
  145.     .b cget -relief
  146. } {solid}
  147. test get-2.3 {Tk_GetReliefFromObj} {
  148.     .b configure -relief sunken
  149.     .b cget -relief
  150. } {sunken}
  151. test get-2.4 {Tk_GetReliefFromObj - error} {
  152.     list [catch {.b configure -relief upanddown} msg] $msg
  153. } {1 {bad relief "upanddown": must be flat, groove, raised, ridge, solid, or sunken}}
  154. if {[testConstraint pseudocolor8]} {
  155.     destroy .t
  156. }
  157. # cleanup
  158. ::tcltest::cleanupTests
  159. return