Tanuld meg, hogyan tesztelheted a MoonScript-feladataidat az Exercism-ön
A MoonScript-kurzusson a tesztelés pontosan ugyanolyan, mint a Lua-kurzusson. Egy feladat könyvtárából írd be a következőt:
$ busted
Ez a kurzus az Exercism tesztvezérelt fejlesztés módszertanát követi. Kapsz egy teljes tesztcsomagot, de csak az első teszt „aktív”.
A tesztek engedélyezéséhez írd át egy teszt parancsát pending-ről it-re.
Ha szereted mindig lefuttatni az összes tesztet, egy parancssori eszközzel egyszerre átírhatod mindegyiket. Nézzünk egy példát a perl használatára (amely szinte mindenhol telepítve van):
$ perl -i -pe 's/^\s+\Kpending\b/it/' two_fer_spec.moon
Amikor az online szerkesztőben dolgozol, a tesztfuttató automatikusan lefuttatja az összes tesztet.
A Lua önmagában egy nagyon kicsi nyelv. A LuaRocks a Lua modulok csomagkezelője.
A megoldásaidban bármilyen modult szabadon használhatsz, de nem mindegyik lesz elérhető az online tesztfuttatóban. A tesztfuttató ezeket biztosítja:
Már elérhető a busted függőségeként
A Penlight tiszta Lua-könyvtárak halmaza, amelyek megkönnyítik a hétköznapi feladatok elvégzését, például a könyvtárakon való iterálást, a konfigurációs fájlok beolvasását és hasonlókat. Funkcionális műveleteket biztosít táblákon és sorozatokon.
A dkjson egy modul JSON-adatok kódolásához és dekódolásához.
Már elérhető a MoonScript függőségeként
Az LPeg egy új mintaillesztő könyvtár Luához, amely a Parsing Expression Grammars (PEGs) eljáráson alapul.
A LuaFileSystem hordozható módot kínál a mögöttes könyvtárszerkezet és a fájltulajdonságok elérésére.
Dátum és idő
Dátum- és időstringek feldolgozása; idő összeadása és kivonása; időtartam számítása; támogatja az ISO 8601 dátumokat.
A Lua TZ dátum- és időfüggvényeket biztosít az időzónák támogatásával. Az alapfüggvények felülete hasonló az os.date és os.time szabványos függvényekéhez, de emellett egy időzóna argumentumot is elfogadnak.
Lua-könyvtár az idő és a dátum kezeléséhez.