咳といいます。

伝わっていると思うけどちょっと訂正。

>> # TCPServerを一度作って閉じ、すぐに同じポート番号を獲得できる、

特定のポート番号でTCPServerを一度作って閉じ、すぐに同じポート番号で獲得できる、

>> # という試験だった気がします。(できない時期があったので)

> うぅむ。そんな内容のテストだったとは。
>
> それは本質的に race condition になるので、保証されないと考えるべきだと
> 思います。

そういうわけで削除します。

プログラマ的には特殊な環境だけで試験が通るテストもどこかに残したいと思うんですが、
どうしたもんでしょうね。test_ほげ.rbじゃない名前で入れておけば良いのかしら。


>> むむ。どうやったらいさぎよく失敗できるのかなあ。
>> ちょっと考えてみます。
>> timeoutなどを使って異常に時間がかかったら救えば良いのかしら。
>
> timeout はテストを遅くする原因になるし、これまた本質的には確実でない方
> 法なので、child process の exit status を使うとか、child process が生
> きているかどうかを適当な間隔で確認するとかにして欲しいです。

それはそうなのですが、そういうのを管理するモジュールのテストに近いので
ちょっと悩ましいです。鋭意努力しますがそれまでの間、timeoutでごまかしても
良いでしょうか?

遅くなるのはtimeoutがスレッドを生成するからですか?
それとも失敗したときにtimeoutの時間まで時間がかかってしまうからですか?