Componentでビルドしたものをテストする
結論
ビルド後のJSではrequire
がpolyfillされているから、フロントエンド側からrequire
を使って適宜呼び出せばよい。
テストスタックは好きなものが使える。例ではMocha, Chai, Karmaでテストしており、変にロックインされる心配はない。
例
MisumiRize/component-test-skeleton · GitHub
npm install -g component karma-cli
必要に応じてグローバルインストールしたあとで、ビルドとテスト実行。
component install component build npm install karma start
ハマりどころ
component.json
のname
はちゃんとつけておくこと。
ビルドを実行してrequire
がpolyfillされる際、component.json
のname
欄を参照して名前が付けられる。未定義のままビルドしてもエラーは発生しないが、名前がundefinedになってしまう。
補足
パスを指定すればエントリポイント以外でもrequire
できる。同じように、的確に名前を指定しさえすれば、component install
したものもテストからrequire
できる。
発端
component.jsonのspecが合ってないと延々悩み続けたら、1.0.0-rc準拠だったというオチがついて泣いてる、visionmedia氏がnode離れてるし1.0.0出る気配ないけど大丈夫かComponent
— 深澄りぜ (@Misumi_Rize) 2014, 10月 1
いつまでたってもヤクの毛刈りから脱出できない
— 深澄りぜ (@Misumi_Rize) 2014, 10月 1
Componentを3時間ほどいじって、ついに「あっこれ中身ガチャガチャできるやつや」と気づいた感動
— 深澄りぜ (@Misumi_Rize) 2014, 10月 1