ExercismでMoonScriptの演習をテストする方法を学びます。
MoonScriptトラックでのテストは、Luaトラックでのテストとまったく同じです。 演習のディレクトリで、次のように入力します:
$ busted
このトラックは、Exercismのテスト駆動開発という方法に沿って進められています。 テストスイートはすべて用意されていますが、最初のテストだけが「有効」になっています。
テストを有効にするには、テストのコマンドをpendingからitに変えます。
いつもすべてのテストを実行していたいという人は、コマンドラインツールを使えば一度にまとめて変更できます。 perl(ほとんどどこにでもインストールされています)を使った例を挙げます:
$ perl -i -pe 's/^\s+\Kpending\b/it/' two_fer_spec.moon
オンラインエディターで作業しているときは、テストランナーが自動的にすべてのテストを実行します。
Lua自体は、とても小さなプログラミング言語です。 LuaRocksは、Luaのモジュールのパッケージマネージャーです。
解答ではどのモジュールでも自由に使えますが、そのすべてがオンラインのテストランナーで使えるわけではありません。 テストランナーでは、次のものが使えます:
bustedの依存関係としてすでに利用できます
Penlightは、ディレクトリの走査や設定ファイルの読み込みといった、よくある作業を簡単にするための純粋なLuaライブラリのセットです。テーブルやシーケンスに対する関数型の操作を提供します。
dkjsonは、JSONデータをエンコードおよびデコードするためのモジュールです。
MoonScriptの依存関係としてすでに利用できます
LPegは、Parsing Expression Grammars(PEGs)に基づいた、Lua用の新しいパターンマッチングライブラリです。
LuaFileSystemは、基盤となるディレクトリ構造とファイルの属性にアクセスするための、移植性の高い方法を提供します。
日時