# This file is a Tcl script to test out PPM reading and writing. # It is organized in the standard fashion for Tcl tests. package require Tk package require tcltest tcltest::configure {*}$argv source [file join [file dirname [info script]] constraints.tcl] package require Img imageInit namespace eval ::ppm::test { namespace import ::tcltest::* set fmt "ppm" set ext "ppm" set file "testimgs/img.$ext" # Encoded image content. source $file.base64 test ppm-1.1 {} -setup { catch {image delete i} } -body { image create photo i -file $file i data -format $fmt } -cleanup { image delete i } -result $imgdata test ppm-1.2 {} -setup { catch {image delete i} } -body { image create photo i -data $imgdata i data -format $fmt } -cleanup { image delete i } -result $imgdata test ppm-1.3 {} -setup { catch {image delete i} } -body { image create photo i i put $imgdata i data -format $fmt } -cleanup { image delete i } -result $imgdata test ppm-1.4 {} -setup { catch {image delete i} } -body { image create photo i i put $imgdata -format $fmt i data -format $fmt } -cleanup { image delete i } -result $imgdata test ppm-2.0 {Binary I/O with PPM images} -setup { } -body { image create photo i set f [open $file r] fconfigure $f -translation binary set return [catch {i put [read $f]} msg] close $f lappend return $msg } -cleanup { image delete i } -result {0 {}} } imageFinish namespace delete ::ppm::test