我正在尝试为一些写入套接字的通信代码编写一些单元测试。在测试期间,我希望将我的通信库写入一个字符串,然后我可以将该字符串的内容与我期望写入的内容进行比较。
在Java语言中,我会使用像StringWriter这样的东西,这样我的通信代码就可以写入标准的Writer接口,最后我可以请求所有写入的数据。
有没有一个等同于这个或Python的Perl的StringIO?这样的东西是不是已经内置了?
发布于 2013-06-21 00:05:58
是。从v5.8开始,您可以直接打开到标量引用的输出句柄。
my $output;
open my $handle, '>', \$output;
print $handle "foo\n";
printf $handle "%d\n", 123;
close $handle;
print $output; # => "foo\n123\n"发布于 2013-06-20 23:26:55
您可以使用IO::Stringy做类似的事情。
https://stackoverflow.com/questions/17217514
复制相似问题