⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.test

📁 tcl是工具命令语言
💻 TEST
📖 第 1 页 / 共 2 页
字号:
	file delete result    } -result "foo\n"    test Tcl_Main-5.6 {	Tcl_Main: interactive mode: errors don't stop command loop    } -constraints {	exec    } -body {	exec [interpreter] << {		error foo		puts bar	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "foo\nbar\n"    test Tcl_Main-5.7 {	Tcl_Main: interactive mode: closed stderr    } -constraints {	exec    } -body {	exec [interpreter] << {		close stderr		error foo		puts bar	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "bar\n"    test Tcl_Main-5.8 {	Tcl_Main: interactive mode: close stdin		-> main loop & [exit] & exit handlers    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		rename exit _exit		proc exit code {		    puts "In exit"		    _exit $code		}		testsetmainloop		testexitmainloop		testexithandler create 0		close stdin	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "Exit MainLoop\nIn exit\neven 0\n"    test Tcl_Main-5.9 {	Tcl_Main: interactive mode: delete interp 		-> main loop & exit handlers, but no [exit]    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		rename exit _exit		proc exit code {		    puts "In exit"		    _exit $code		}		testsetmainloop		testexitmainloop		testexithandler create 0		testinterpdelete {}	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "Exit MainLoop\neven 0\n"    test Tcl_Main-5.10 {	Tcl_Main: exit main loop in mid-interactive command    } -constraints {	exec Tcltest    } -setup {	catch {set f [open "|[list [interpreter]]" w+]}	catch {fconfigure $f -blocking 0}    } -body {	type $f "testsetmainloop	         after 2000 testexitmainloop	         puts \{1 2"	after 4000	type $f "3 4\}"	set code1 [catch {gets $f} line1]	set code2 [catch {gets $f} line2]	set code3 [catch {gets $f} line3]	list $code1 $line1 $code2 $line2 $code3 $line3    } -cleanup {	close $f    } -result [list 0 {Exit MainLoop} 0 {1 2} 0 {3 4}]    test Tcl_Main-5.11 {	Tcl_Main: EOF in interactive main loop    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		rename exit _exit		proc exit code {		    puts "In exit"		    _exit $code		}		testexithandler create 0		after 0 testexitmainloop		testsetmainloop	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "Exit MainLoop\nIn exit\neven 0\n"    test Tcl_Main-5.12 {	Tcl_Main: close stdin in interactive main loop    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		rename exit _exit		proc exit code {		    puts "In exit"		    _exit $code		}		testexithandler create 0		after 100 testexitmainloop		testsetmainloop		close stdin		puts "don't reach this"	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "Exit MainLoop\nIn exit\neven 0\n"    # Tests Tcl_Main-6.*: interactive operations with prompts    test Tcl_Main-6.1 {	Tcl_Main: enable prompts with tcl_interactive    } -constraints {	exec    } -body {	exec [interpreter] << {set tcl_interactive 1} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n% "    test Tcl_Main-6.2 {	Tcl_Main: prompt deletes interp    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		set tcl_prompt1 {testinterpdelete {}}		set tcl_interactive 1		puts "not reached"	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n"    test Tcl_Main-6.3 {	Tcl_Main: prompt closes stdin    } -constraints {	exec    } -body {	exec [interpreter] << {		set tcl_prompt1 {close stdin}		set tcl_interactive 1		puts "not reached"	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n"    test Tcl_Main-6.4 {	Tcl_Main: interactive output, closed stdout    } -constraints {	exec    } -body {	exec [interpreter] << {		set tcl_interactive 1		close stdout		set a NO		puts stderr YES	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n% YES\n"    test Tcl_Main-6.5 {	Tcl_Main: interactive entry to main loop    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		set tcl_interactive 1		testsetmainloop		testexitmainloop} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n% % % Exit MainLoop\n"    test Tcl_Main-6.6 {	Tcl_Main: number of prompts during stdin close exit    } -constraints {	exec    } -body {	exec [interpreter] << {		set tcl_interactive 1		close stdin} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n% "    # Tests Tcl_Main-7.*: exiting    test Tcl_Main-7.1 {	Tcl_Main: [exit] defined as no-op -> still have exithandlers    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		proc exit args {}		testexithandler create 0	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "even 0\n"    test Tcl_Main-7.2 {	Tcl_Main: [exit] defined as no-op -> still have exithandlers    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		proc exit args {}		testexithandler create 0		after 0 testexitmainloop		testsetmainloop	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "Exit MainLoop\neven 0\n"    # Tests Tcl_Main-8.*: StdinProc operations    test Tcl_Main-8.1 {	StdinProc: handles non-blocking stdin    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		fconfigure stdin -blocking 0		testexitmainloop	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "Exit MainLoop\n"    test Tcl_Main-8.2 {	StdinProc: handles stdin EOF    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		testexithandler create 0		rename exit _exit		proc exit code {		    puts "In exit"		    _exit $code		}		after 100 testexitmainloop	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "Exit MainLoop\nIn exit\neven 0\n"    test Tcl_Main-8.3 {	StdinProc: handles interactive stdin EOF    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		testexithandler create 0		rename exit _exit		proc exit code {		    puts "In exit"		    _exit $code		}		set tcl_interactive 1} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n% even 0\n"    test Tcl_Main-8.4 {	StdinProc: handles stdin close    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		rename exit _exit		proc exit code {		    puts "In exit"		    _exit $code		}		after 100 testexitmainloop		after 0 puts 1		close stdin	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\nExit MainLoop\nIn exit\n"    test Tcl_Main-8.5 {	StdinProc: handles interactive stdin close    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		set tcl_interactive 1		rename exit _exit		proc exit code {		    puts "In exit"		    _exit $code		}		after 100 testexitmainloop		after 0 puts 1		close stdin	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n% % % after#0\n% after#1\n% 1\nExit MainLoop\nIn exit\n"    test Tcl_Main-8.6 {	StdinProc: handles event loop re-entry    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		after 100 {puts 1; set delay 1}		vwait delay		puts 2		testexitmainloop	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n2\nExit MainLoop\n"    test Tcl_Main-8.7 {	StdinProc: handling of errors    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		error foo		testexitmainloop	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "foo\nExit MainLoop\n"    test Tcl_Main-8.8 {	StdinProc: handling of errors, closed stderr    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		close stderr		error foo		testexitmainloop	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "Exit MainLoop\n"    test Tcl_Main-8.9 {	StdinProc: interactive output    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		set tcl_interactive 1		testexitmainloop} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n% % Exit MainLoop\n"    test Tcl_Main-8.10 {	StdinProc: interactive output, closed stdout    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		close stdout		set tcl_interactive 1		testexitmainloop	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result {}    test Tcl_Main-8.11 {	StdinProc: prompt deletes interp    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		set tcl_prompt1 {testinterpdelete {}}		set tcl_interactive 1} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n"    test Tcl_Main-8.12 {	StdinProc: prompt closes stdin    } -constraints {	exec Tcltest    } -body {	exec [interpreter] << {		testsetmainloop		set tcl_prompt1 {close stdin}		after 100 testexitmainloop		set tcl_interactive 1		puts "not reached"	} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\nExit MainLoop\n"    # Tests Tcl_Main-9.*: Prompt operations    test Tcl_Main-9.1 {	Prompt: custom prompt variables    } -constraints {	exec    } -body {	exec [interpreter] << {		set tcl_prompt1 {puts -nonewline stdout "one "}		set tcl_prompt2 {puts -nonewline stdout "two "}		set tcl_interactive 1		puts {This is		a test}} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\none two This is\n\t\ta test\none "    test Tcl_Main-9.2 {	Prompt: error in custom prompt variables    } -constraints {	exec    } -body {	exec [interpreter] << {		set tcl_prompt1 {error foo}		set tcl_interactive 1		set errorInfo} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\nfoo\n% foo\n    while executing\n\"error foo\"\n    (script\	that generates prompt)\nfoo\n% "    test Tcl_Main-9.3 {	Prompt: error in custom prompt variables, closed stderr    } -constraints {	exec    } -body {	exec [interpreter] << {		set tcl_prompt1 {close stderr; error foo}		set tcl_interactive 1} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\n% "    test Tcl_Main-9.4 {	Prompt: error in custom prompt variables, closed stdout    } -constraints {	exec    } -body {	exec [interpreter] << {		set tcl_prompt1 {close stdout; error foo}		set tcl_interactive 1} >& result	set f [open result]	read $f    } -cleanup {	close $f	file delete result    } -result "1\nfoo\n"    cd [workingDirectory]    cleanupTests}namespace delete ::tcl::test::mainreturn

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -