package require tcltest 2 namespace import tcltest::* set pwd [file normalize $argv0] set pwd [eval file join {*}[lrange [file split $pwd] 0 end-1]] source ../port_test_autoconf.tcl source $macports::autoconf::macports_tcl_dir/macports1.0/macports_fastload.tcl package require macports 1.0 array set ui_options {} #set ui_options(ports_debug) yes #set ui_options(ports_verbose) yes mportinit ui_options source ../portload.tcl source ../port_autoconf.tcl test load_main { Load main unit test. } -constraints { root } -setup { set path /Library/test/files file mkdir $path # Create dummy plist set fd [open $path/file.plist w+] puts $fd "\" puts $fd "\" puts $fd "\" puts $fd "\" puts $fd "\Label\" puts $fd "\org.test.load\" puts $fd "\ProgramArguments\" puts $fd "\\/bin/ls\\" puts $fd "\" puts $fd "\" close $fd } -body { set launchctl_path ${portutil::autoconf::launchctl_path} set startupitem.location test set startupitem.plist files/file.plist if {[portload::load_main] != ""} { return "FAIL: unable to load plist" } return "Load successful." } -cleanup { exec $launchctl_path unload -w $path 2>@stderr file delete -force /Library/test } -result "Load successful." cleanupTests