unittest/netinst-tests.lが通らない場合がある

xyzzy_17_638 avatarxyzzy_17_638 created an issue

再現方法

  1. 0.2.3.8RC1のソースを取得
  2. unittest/editor-tests.l:chdir-4 の "dir" は "cmd.exe /c dir" に書き換える
  3. 0.2.3.8RC1の状態でビルド
  4. run-all-tests.batを実行

期待する動作

"ALL passed" が出力される

実際の動作

エラーが起きる。エラー出力は以下のようになる

safe-data-read...Failed
  ;; ni::safe-data-read が read-time-eval のリーダーマクロを実行しないことを確認。
  ;;    ni::load-site-data-file も同様の処理なのでこちらのテストは省略。
  * (with-temp-files (file) (with-open-file (out file :direction :output :if-does-not-exist :create) (format out "#.(+ 1 1)~%")) (netinst::safe-data-read file))
  Evaluation result (error):
    Expected:
    !! simple-error
    Actually:
    => (2)

再現バージョン

  • 0.2.3.8RC1

備考

  • *scratch* 等から run-tests-from-file で netinst-tests.l を実行した場合は正常にテストをパスする

Comments (6)

  1. southly

    multiframe_0_2_3_8_RC1.zip で試してみましたが、再現しませんでした。

    そういう現象はマルチフレーム版でコンパイルしたlcファイルを0.2.2.235でロードするとおきそうですが、 そうなると他のテストでもエラーになるでしょうし謎です。

  2. xyzzy_17_638

    確認ありがとうございます!!

    ヒントいただいて、ということは環境の問題だなーと思って、ちょこちょこ試してみたところ、

    run-all-test.bat 内での xyzzy の呼び出しに -q をつけて、 .xyzzy を読み込まないようにするとテストをパスするようになりました

    - "%XYZZYHOME%\xyzzy.exe" -l "%TESTDIR%\run-all.l"
    + "%XYZZYHOME%\xyzzy.exe" -q -l "%TESTDIR%\run-all.l"
    

    うちの.xyzzyは何か毒が入ってるんだなー…

    とりあえず -q 自体はどの環境でも無害だと思うので、chdir-4 と合わせて PR 出そうと思います。 ありがとうございました。

  3. Log in to comment
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.