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

📄 test_stream.pl

📁 这是国外的resip协议栈
💻 PL
字号:
#!/usr/bin/perluse strict;use lib qw(../harness);use harness;my $client = "stream_client";my $server = "stream_server";if ($^O =~ /mswin/) {    $client .= ".exe";    $server .= ".exe";} else {    $client = "./$client";    $server = "./$server";}my @addresses = qw(    localhost:5005    local://stream_socket);my $max_send = 4096;my $interval = 512;if ((stat($client))[7] <= $max_send) {    print STDERR "$0: client binary is too small for test\n";    exit 1;}my $test = harness->new("Stream IO");foreach my $addr (@addresses) {    for (my $i=$interval; $i<=$max_send; $i += $interval) {	$test->start("$addr with $i bytes");	run_server($addr, $i);	select(undef, undef, undef, 0.75);	my $out = `$client $addr $client $i 2>&1`;	if ($? == 0) {	    $test->pass;	} else {	    if (not defined $out or not length($out)) {		$out = "unknown error";	    }	    $test->fail($out);	}    }}$test->start("Bad Address");my $out = `$client cant_resolve_this_name.fake 1024 2>&1`;if ($? == 0) { $test->fail("test should have triggerd return != 0"); }else { $test->pass(); }sub run_server {    my ($address, $bytes) = @_;    system("$server $address $bytes > /dev/null 2>&1 &");}

⌨️ 快捷键说明

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