1# 2# $Id$ 3# 4 5package require Tk 8.5 6package require tcltest ; namespace import -force tcltest::* 7loadTestedCommands 8 9 10test progressbar-1.1 "Setup" -body { 11 ttk::progressbar .pb 12} -result .pb 13 14test progressbar-1.2 "Linked variable" -body { 15 set PB 50 16 .pb configure -variable PB 17 .pb cget -value 18} -result 50 19 20test progressbar-1.3 "Change linked variable" -body { 21 set PB 80 22 .pb cget -value 23} -result 80 24 25test progressbar-1.4 "Set linked variable to bad value" -body { 26 set PB "bogus" 27 .pb instate invalid 28} -result 1 29 30test progressbar-1.4.1 "Set linked variable back to a good value" -body { 31 set PB 80 32 .pb instate invalid 33} -result 0 34 35test progressbar-1.5 "Set -variable to illegal variable" -body { 36 set BAD "bogus" 37 .pb configure -variable BAD 38 .pb instate invalid 39} -result 1 40 41test progressbar-1.6 "Unset -variable" -body { 42 unset -nocomplain UNSET 43 .pb configure -variable UNSET 44 .pb instate disabled 45} -result 1 46 47test progressbar-2.0 "step command" -body { 48 .pb configure -variable {} ;# @@@ 49 .pb configure -value 5 -maximum 10 -mode determinate 50 .pb step 51 .pb cget -value 52} -result 6.0 53 54test progressbar-2.1 "step command, with stepamount" -body { 55 .pb step 3 56 .pb cget -value 57} -result 9.0 58 59test progressbar-2.2 "step wraps at -maximum in determinate mode" -body { 60 .pb step 61 .pb cget -value 62} -result 0.0 63 64test progressbar-2.3 "step doesn't wrap in indeterminate mode" -body { 65 .pb configure -value 8 -maximum 10 -mode indeterminate 66 .pb step 67 .pb step 68 .pb step 69 .pb cget -value 70} -result 11.0 71 72test progressbar-2.4 "step with linked variable" -body { 73 .pb configure -variable PB ;# @@@ 74 set PB 5 75 .pb step 76 set PB 77} -result 6.0 78 79test progressbar-2.5 "error in write trace" -body { 80 trace variable PB w { error "YIPES!" ;# } 81 .pb step 82 set PB ;# NOTREACHED 83} -cleanup { unset PB } -returnCodes 1 -match glob -result "*YIPES!" 84 85test progressbar-end "Cleanup" -body { 86 destroy .pb 87} 88 89tcltest::cleanupTests 90