了解如何在 Exercism 上測試你的 MoonScript 練習。
MoonScript 軌道的測試方式,就跟在 Lua 軌道上測試完全一樣。 在練習目錄中,輸入:
$ busted
這個軌道遵循 Exercism 的測試驅動開發方法。 你會拿到一份完整的測試套件,但只有第一個測試是「啟用」狀態。
要啟用測試,請把測試的指令從pending改成it。
如果你喜歡一直執行所有測試,可以用命令列工具一次把它們全部改掉。 底下是用 perl 做的範例(幾乎每個地方都裝了 perl):
$ perl -i -pe 's/^\s+\Kpending\b/it/' two_fer_spec.moon
當你在線上編輯器裡工作時,測試執行器會自動執行所有測試。
Lua 本身是一門非常小的語言。 LuaRocks 是 Lua 模組的套件管理器。
你可以在自己的解法中自由使用任何模組,但不是所有模組都能在線上測試執行器中使用。 測試執行器提供以下這些:
已可作為 busted 的相依套件使用
Penlight 是一組純 Lua 函式庫,讓你更容易處理遍歷目錄、讀取設定檔這類常見工作。它提供了資料表與序列的函式式操作。
dkjson 是一個用來編碼與解碼 JSON 資料的模組。
已可作為 MoonScript 的相依套件使用
LPeg 是一個為 Lua 打造的新式模式比對函式庫,以剖析表達式文法(PEG)為基礎。
LuaFileSystem 提供可攜的方式來存取底層的目錄結構與檔案屬性。
日期與時間