Kouhei Sutou
kou****@cozmi*****
2004年 4月 24日 (土) 12:06:46 JST
須藤です. In <20040****@mbox0*****> "[Anthy-dev 780] Re: testing framework" on Sat, 24 Apr 2004 10:44:41 +0900, YamaKen <yamak****@bp*****> wrote: > 私の手元にあるFreeBSD 5.2-CURRENT, Linux 2.4.20の双方で100回テス > トを回してみましたが、問題なく動くようになりました。ありがとうご > ざいました。[Anthy-dev 778]のパッチも取り込んでありますが、この > 対応のためにuim-test-utils.scmに施した変更が正しいか確認してもら > えますでしょうか。 uim-shがstdoutに出力するようになったので,run-processは標準 エラー出力への出力をパイプに通さない方が良い気がします. 以前の"uim/uim-sh -b"というように(run-processにとって) 変な コマンド名を指定した時のエラーメッセージ(exec failed: No such file or directory)も見えるようになります. ということで,最後につけたパッチでどうでしょうか. # ついでに,flush-all-portsで手抜きしていた部分を,uim-shへの # 入力ポートだけflushするようにしてあります. > これで念願の自動テスト環境が手に入ったので、コード破壊に怯える事 > なくuimの改良を進められるように活用させて頂きます。もう一度、あ > りがとうございました。 uimがGaUnit使用プロジェクト第一号になりそうで私も嬉しいです.:D # 私の作ったもの以外で,GaUnitを用いてテストをしているプロジェ # クトを私は知りません. Index: test/uim-test-utils.scm =================================================================== --- test/uim-test-utils.scm (revision 749) +++ test/uim-test-utils.scm (working copy) @@ -16,15 +16,15 @@ (define *uim-process* #f) (define *uim-selector* (make <selector>)) (define (uim sexp) - (write sexp (process-input *uim-process*)) - (flush-all-ports) - (let ((output (process-output *uim-process*)) - (err (process-error *uim-process*))) + (let ((input (process-input *uim-process*)) + (output (process-output *uim-process*))) + (write sexp input) + (flush input) (set! (port-buffering output) :none) (selector-add! *uim-selector* output - (lambda (sock flag) - (selector-delete! *uim-selector* sock #f #f)) + (lambda (output flag) + (selector-delete! *uim-selector* output #f #f)) '(r)) (selector-select *uim-selector*) (read output))) @@ -38,8 +38,7 @@ (set! *uim-process* (run-process "uim/uim-sh" "-b" :input :pipe - :output :pipe - :error :pipe)) + :output :pipe)) (additional-setup-proc)))) (define (make-uim-teadown-proc . args)