プラグイン作成の準備
babel-plugin-transowrm-es2015-arrow-functions を参考に、プラグインのセットアップ方法をまとめます。
$ mkdir babel-plugin-transform-sample
$ cd babel-plugin-transform-sample
$ npm initテストランナーに mocha と babel-helper-plugin-test-runner を使っているようです。
test/index.js は、決められたコードを書くだけのようです。
import runner from 'babel-helper-plugin-test-runner';
runner(__dirname);import を使うので babel-preset-es2015 が使えるようにしておいてください。
test/fixtures/{プラグイン名} 以下に、テスト項目ごとにディレクトリを作り、actual.js と expected.js を置きます。
最も大事なこととして、 test/fixtures/options.json というファイルで、 作ろうとしているプラグインを読み込む 設定ファイルを書くことです。
{
"plugins": ["transform-sample"]
}package.json にタスクを追加しましょう。 上述の設定ファイルの都合上、自分自身を呼び出せなければならないので、require-self というコマンドを使います。
{
"name": "babel-plugin-transform-sample",
"main": "lib/index.js",
"scripts": {
"build": "babel -d lib src",
"require-self": "npm run build && require-self",
"mocha": "npm run require-self && mocha --compilers js:babel-register test/index.js"
}
}必要なパッケージのインストールをまとめると、
となります。 この状態で
を実行すると、actual.js と expected.js を比較したテストが実行されます。
Last updated