Preparing a regression test using l3build framework. Test files are derived from:
- ptex-base: https://github.com/texjporg/ptex-base
- cur-plain: Current plain (u)pTeX behavior
- cur-latex: Current (u)pLaTeX behavior
Also, there are some sandbox directories:
- dev-latex: Test directory ready for LaTeX (pLaTeX/upLaTeX)
- dev-plain: Test directory ready for plain (e-pTeX/e-upTeX)
テストを実行するには,トップディレクトリにある fmtutil.cnf を TEXMF ツリーに配置した後で
$ texlua build.lua check
とする。
- 早めに
\input regression-testする(LaTeX では\input{regression-test}) - テスト開始は
\START - 出力テストの場合は
\loggingoutput- plain で
\byeではなく\endで終わっているソースでは,その直前に\ejectの追加も必要
- plain で
\OMITから\TIMOまではテストから除外
pTeX のバージョンにより .tlg が変化する可能性もあるが,このリポジトリに置く
.tlg は 必ず TeX Live subversion にあるバージョン で作成すること!
(開発版 pTeX が現在の公式版 pTeX とどう違うのかをはっきりさせるため)
ただし dev-latex と dev-plain は sandbox として,何でもアリとする。
個々のサブディレクトリで
$ texlua build.lua save sample
とする。これで sample.lvt に対して
sample.tlg が作られる。ここで使われるエンジンは変数
stdengine で決まるが,本リポジトリでは build-config.lua において既定を
eptex に設定している。もし既定エンジンとログが異なる場合は,それ用の
.tlg が必要。例えば
$ texlua build.lua save --engine=euptex sample
とすれば sample.euptex.tlg が作られる。
注意:l3build は .tlg を作る時にログを normalise するが,この時
pTeX による変更の一部を(pdfTeX との差分を減らすために)消してしまう。
2019-10-27 のコミットで
, yoko direction と \displace 0.0
は消さないようになった (latex3/l3build#103)
が,他にもあるかもしれないので注意。安全のため,手動で
$ eptex sample
として得た sample.log と,上述の
l3build の save で得た sample.tlg を比較するのが望ましい。
Japanese TeX Development Community