diff options
Diffstat (limited to 'tests/canvPs.test')
-rw-r--r-- | tests/canvPs.test | 148 |
1 files changed, 96 insertions, 52 deletions
diff --git a/tests/canvPs.test b/tests/canvPs.test index 387a447..f2df447 100644 --- a/tests/canvPs.test +++ b/tests/canvPs.test @@ -7,50 +7,66 @@ # All rights reserved. package require tcltest 2.1 -namespace import -force tcltest::configure -namespace import -force tcltest::testsDirectory -configure -testdir [file join [pwd] [file dirname [info script]]] -configure -loadfile [file join [testsDirectory] constraints.tcl] +eval tcltest::configure $argv tcltest::loadTestedCommands -namespace import -force tcltest::makeFile -namespace import -force tcltest::removeFile - canvas .c -width 400 -height 300 -bd 2 -relief sunken .c create rectangle 20 20 80 80 -fill red pack .c update -test canvPs-1.1 {test writing to a file} {unixOrPc} { - removeFile foo.ps - .c postscript -file foo.ps - file exists foo.ps -} 1 -test canvPs-1.2 {test writing to a file, idempotency} {unixOrPc} { +test canvPs-1.1 {test writing to a file} -constraints { + unixOrPc +} -setup { + set foo [makeFile {} foo.ps] +} -body { + .c postscript -file $foo + file exists $foo +} -cleanup { removeFile foo.ps - removeFile bar.ps - .c postscript -file foo.ps - .c postscript -file bar.ps +} -result 1 +test canvPs-1.2 {test writing to a file, idempotency} -constraints { + unixOrPc +} -setup { + set foo [makeFile {} foo.ps] + set bar [makeFile {} bar.ps] +} -body { + .c postscript -file $foo + .c postscript -file $bar set status ok - if {[file size bar.ps] != [file size foo.ps]} { + if {[file size $bar] != [file size $foo]} { set status broken } set status -} ok - -test canvPs-2.1 {test writing to a channel} {unixOrPc} { +} -cleanup { removeFile foo.ps - set chan [open foo.ps w] + removeFile bar.ps +} -result ok + +test canvPs-2.1 {test writing to a channel} -constraints { + unixOrPc +} -setup { + set foo [makeFile {} foo.ps] + file delete $foo +} -body { + set chan [open $foo w] fconfigure $chan -translation lf .c postscript -channel $chan close $chan - file exists foo.ps -} 1 -test canvPs-2.2 {test writing to channel, idempotency} {unixOrPc} { + file exists $foo +} -cleanup { removeFile foo.ps - removeFile bar.ps - set c1 [open foo.ps w] - set c2 [open bar.ps w] +} -result 1 +test canvPs-2.2 {test writing to channel, idempotency} -constraints { + unixOrPc +} -setup { + set foo [makeFile {} foo.ps] + set bar [makeFile {} bar.ps] + file delete $foo + file delete $bar +} -body { + set c1 [open $foo w] + set c2 [open $bar w] fconfigure $c1 -translation lf fconfigure $c2 -translation lf .c postscript -channel $c1 @@ -58,42 +74,65 @@ test canvPs-2.2 {test writing to channel, idempotency} {unixOrPc} { close $c1 close $c2 set status ok - if {[file size bar.ps] != [file size foo.ps]} { + if {[file size $bar] != [file size $foo]} { set status broken } set status -} ok -test canvPs-2.3 {test writing to channel and file, same output} {unixOnly} { +} -cleanup { removeFile foo.ps removeFile bar.ps - set c1 [open foo.ps w] +} -result ok +test canvPs-2.3 {test writing to channel and file, same output} -constraints { + unix +} -setup { + set foo [makeFile {} foo.ps] + set bar [makeFile {} bar.ps] + file delete $foo + file delete $bar +} -body { + set c1 [open $foo w] fconfigure $c1 -translation lf .c postscript -channel $c1 close $c1 - .c postscript -file bar.ps + .c postscript -file $bar set status ok - if {[file size foo.ps] != [file size bar.ps]} { + if {[file size $foo] != [file size $bar]} { set status broken } set status -} ok -test canvPs-2.4 {test writing to channel and file, same output} {pcOnly} { +} -cleanup { removeFile foo.ps removeFile bar.ps - set c1 [open foo.ps w] +} -result ok +test canvPs-2.4 {test writing to channel and file, same output} -constraints { + win +} -setup { + set foo [makeFile {} foo.ps] + set bar [makeFile {} bar.ps] + file delete $foo + file delete $bar +} -body { + set c1 [open $foo w] fconfigure $c1 -translation crlf .c postscript -channel $c1 close $c1 - .c postscript -file bar.ps + .c postscript -file $bar set status ok - if {[file size foo.ps] != [file size bar.ps]} { + if {[file size $foo] != [file size $bar]} { set status broken } set status -} ok - -test canvPs-3.1 {test ps generation with an embedded window} {notAqua} { +} -cleanup { + removeFile foo.ps removeFile bar.ps +} -result ok + +test canvPs-3.1 {test ps generation with an embedded window} -setup { + set bar [makeFile {} bar.ps] + file delete $bar +} -constraints { + notAqua +} -body { destroy .c pack [canvas .c -width 200 -height 200 -background white] .c create rect 20 20 150 150 -tags rect0 -dash . -width 2 @@ -101,26 +140,32 @@ test canvPs-3.1 {test ps generation with an embedded window} {notAqua} { -dash {4 4} -stipple question -outline red -fill green image create photo logo \ - -file [file join $tk_library images pwrdLogo150.gif] + -file [file join [file dirname [info script]] pwrdLogo150.gif] .c create image 200 50 -image logo -anchor nw entry .c.e -background pink -foreground blue -width 14 .c.e insert 0 "we gonna be postscripted" .c create window 50 180 -anchor nw -window .c.e update - .c postscript -file bar.ps - file exists bar.ps -} 1 -test canvPs-3.2 {test ps generation with an embedded window not mapped} {} { + .c postscript -file $bar + file exists $bar +} -cleanup { removeFile bar.ps +} -result 1 +test canvPs-3.2 {test ps generation with an embedded window not mapped} -setup { + set bar [makeFile {} bar.ps] + file delete $bar +} -body { destroy .c pack [canvas .c -width 200 -height 200 -background white] entry .c.e -background pink -foreground blue -width 14 .c.e insert 0 "we gonna be postscripted" .c create window 50 180 -anchor nw -window .c.e - .c postscript -file bar.ps - file exists bar.ps -} 1 + .c postscript -file $bar + file exists $bar +} -cleanup { + removeFile bar.ps +} -result 1 test canvPs-4.1 {test ps generation with single-point uncolored poly, bug 734498} {} { destroy .c @@ -130,8 +175,7 @@ test canvPs-4.1 {test ps generation with single-point uncolored poly, bug 734498 } 0 # cleanup -removeFile foo.ps -removeFile bar.ps +unset -nocomplain foo bar deleteWindows -::tcltest::cleanupTests +cleanupTests return |