1# 2# ttk::checkbutton widget tests. 3# 4 5package require Tk 6package require tcltest ; namespace import -force tcltest::* 7loadTestedCommands 8 9test checkbutton-1.1 "Checkbutton check" -body { 10 pack [ttk::checkbutton .cb -text "TCheckbutton" -variable cb] 11} 12test checkbutton-1.2 "Checkbutton invoke" -body { 13 .cb invoke 14 list [set ::cb] [.cb instate selected] 15} -result [list 1 1] 16test checkbutton-1.3 "Checkbutton reinvoke" -body { 17 .cb invoke 18 list [set ::cb] [.cb instate selected] 19} -result [list 0 0] 20 21test checkbutton-1.4 "Checkbutton variable" -body { 22 set result [] 23 set ::cb 1 24 lappend result [.cb instate selected] 25 set ::cb 0 26 lappend result [.cb instate selected] 27} -result {1 0} 28 29test checkbutton-1.5 "Unset checkbutton variable" -body { 30 set result [] 31 unset ::cb 32 lappend result [.cb instate alternate] [info exists ::cb] 33 set ::cb 1 34 lappend result [.cb instate alternate] [info exists ::cb] 35} -result {1 0 0 1} 36 37# See #1257319 38test checkbutton-1.6 "Checkbutton default variable" -body { 39 destroy .cb ; unset -nocomplain {} ; set result [list] 40 ttk::checkbutton .cb -onvalue on -offvalue off 41 lappend result [.cb cget -variable] [info exists .cb] [.cb state] 42 .cb invoke 43 lappend result [info exists .cb] [set .cb] [.cb state] 44 .cb invoke 45 lappend result [info exists .cb] [set .cb] [.cb state] 46} -result [list .cb 0 alternate 1 on selected 1 off {}] 47 48tcltest::cleanupTests 49