=encoding utf8 =head1 NAME =begin original HTTP::WebTest::Utils - Miscellaneous subroutines used by HTTP::WebTest =end original HTTP::WebTest::Utils - HTTP::WebTest で使う様々な関数群 =head1 SYNOPSIS use HTTP::WebTest::Utils; *method = make_access_method($field); *method = make_access_method($field, $default_value); *method = make_access_method($field, sub { ... }); find_port(hostname => $hostname); my $pid = start_webserver(port => $port, server_sub => sub { ... }); stop_webserver($pid); copy_dir($src_dir, $dst_dir); load_package($package); my $ret = eval_in_playground($code); die $@ if $@; =head1 DESCRIPTION =begin original This packages contains utility subroutines used by L. All of them can be exported but none of them is exported by default. =end original このパッケージには L が使うユーティリティ関数 が含まれています. 全ての関数はエクスポート可能ですがデフォルトでは 何もエクスポートされません. =head1 SUBROUTINES =head2 make_access_method($field, $optional_default_value) =begin original Creates anonymous subroutine which can be used as accessor method. Method can be used with objects that are blessed hashes. =end original アクセサメソッドとして使える無名関数を生成します. メソッドはハッシュをブレスしたオブジェクトに対して使用できます. =begin original Typical usage is =end original 典型的な使い方は以下の通りです: *method = make_access_method($field, ...); =head3 Parameters (パラメータ) =over 4 =item * $field =begin original A hash field used for created accessor method. =end original アクセサメソッドを作るときに使うハッシュのフィールド名. =item * $optional_default_value =begin original If C<$optional_default_value> is a code reference, uses values returned by its execution as default for created accessor method. Otherwise, uses C<$optional_default_value> as name of method which returns default value for created accessor method. =end original C<$optional_default_value> がコードリファレンスであれば, アクセサメソッドを作るときにそれを実行した結果の値をデフォルト値として 使います. そうでなければデフォルト値を返すメソッドの名前として C<$optional_default_value> を使います. =back =head3 Returns (復帰値) =head2 find_port (hostname => $hostname) =head3 Returns (復帰値) =begin original Free port number for network interface specified by C<$hostname>. =end original C<$hostname> で指定されたネットワークインターフェースカードで 空いているポート番号. =head2 start_webserver(%params) =begin original Starts separate process with a test webserver. =end original 別プロセスでテストウェブサーバを起動します. =head3 Parameters (パラメータ) =over 4 =item port => $port =begin original A port number where the test webserver listens for incoming connections. =end original コネクションを受け付けるためにテストウェブサーバがlistenするポート番号. =item server_sub => $server_sub =begin original A reference on a subroutine to handle requests. It get passed two named parameters: C and C. =end original リクエストを処理する関数へのリファレンス. 関数には2つの名前付きパラメータ C 及び C が渡されます. =back =head2 stop_webserver($pid) =begin original Kills a test webserver specified by its PID. =end original 指定された PID を持つテストウェブサーバを kill します. =head2 copy_dir ($src_dir, $dst_dir) =begin original Copies directiory recursively. =end original ディレクトリを再帰的にコピーします. =head2 load_package ($package) =begin original Loads package unless it is already loaded. =end original まだロードされていなければそのパッケージをロードします. =head2 eval_in_playground ($code) =begin original Evaluates perl code inside playground package. =end original playground パッケージの中で perl コードを評価します. =head3 Returns (復帰値) =begin original A return value of evaluated code. =end original 評価したコードの復帰値. =head2 make_sub_in_playground ($code) =begin original Create anonymous subroutine inside playground package. =end original playground パッケージの中で無名関数を生成します. =head3 Returns (復帰値) =begin original A reference on anonymous subroutine. =end original 無名関数へのリファレンス. =head1 COPYRIGHT Copyright (c) 2001-2003 Ilya Martynov. All rights reserved. =begin original This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =end original このプログラムはフリーソフトウェアです. このプログラムは Perl 自身と同じ条件下で再配布・改変可能です. =head1 SEE ALSO L L