prompt.t
来自「source of perl for linux application,」· T 代码 · 共 57 行
T
57 行
#!/usr/bin/perl -wBEGIN { if( $ENV{PERL_CORE} ) { chdir 't' if -d 't'; @INC = ('../lib', 'lib'); } else { unshift @INC, 't/lib'; }}use strict;use Test::More tests => 11;use ExtUtils::MakeMaker;use TieOut;use TieIn;eval q{ prompt();};like( $@, qr/^Not enough arguments for ExtUtils::MakeMaker::prompt/, 'no args' );eval { prompt(undef);};like( $@, qr/^prompt function called without an argument/, 'undef message' );my $stdout = tie *STDOUT, 'TieOut' or die;$ENV{PERL_MM_USE_DEFAULT} = 1;is( prompt("Foo?"), '', 'no default' );like( $stdout->read, qr/^Foo\?\s*\n$/, ' question' );is( prompt("Foo?", undef), '', 'undef default' );like( $stdout->read, qr/^Foo\?\s*\n$/, ' question' );is( prompt("Foo?", 'Bar!'), 'Bar!', 'default' );like( $stdout->read, qr/^Foo\? \[Bar!\]\s+Bar!\n$/, ' question' );SKIP: { skip "eof() doesn't honor ties in 5.5.3", 3 if $] < 5.006; $ENV{PERL_MM_USE_DEFAULT} = 0; close STDIN; my $stdin = tie *STDIN, 'TieIn' or die; $stdin->write("From STDIN"); ok( !-t STDIN, 'STDIN not a tty' ); is( prompt("Foo?", 'Bar!'), 'From STDIN', 'from STDIN' ); like( $stdout->read, qr/^Foo\? \[Bar!\]\s*$/, ' question' );}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?