cpanfileのシンタックスチェック
cpanfileのシンタックスが壊れていた影響で悲劇が起きていていたので,
そういうのは機械にチェックさせましょうや,という事で書いたのが以下です.
仕組みは至って簡単で,Module::CPANfile->load()
にcpanfileのパスを食わせてやると,
シンタックスが不正な時に例外上げてくれてくれるので,そこに引っかけてやれば良いという感じですね.
(Module::CPANfile->load()
は賢いので,シンタックスが不正な行数も教えてくれます)
例えばこのようなな不正なcpanfileがあったとして *1,上記のテストを走らせると,
という具合にテストがずっこけてくれる訳ですね.しかも2行目って書いてるからわかりやすい!
Minillaとかですと,build時にここら辺のチェックもやってくれるので,
モジュール作る時はそうしたオーサリングツール使うのが良いと思います.
モジュールじゃない時には,こうしたテストで引っかけてやると良いのでは無いでしょうか,と思った次第です.
追記
vimをお使いの方はsyntasticと拙作のsyntastic-cpanfileを組み合わせると,
ファイル保存時に自動的にシンタックスチェックかけてくれるので便利です.
(ぶっちゃけ,↑のソースコードはそのsyntastic-cpanfileからほぼほぼそのまま引っ張ってきた)
ぜひご活用ください.