CoffeeKupというcoffee-scriptのソースコードがそのままテンプレートになるテンプレートライブラリがあります。
どういう意味かは、公式サイトのデモを見ればなんとなく分かるかとおもいます。
coffeekup.org
テンプレート言語としてはなんとなくjadeっぽいので、coffee-scriptを知らない人でも使うのは難しくないはずです。テキストをいちいちクォートしているあたりにcoffee-scriptそのものを使っている感が見て取れるかと思います。
さて、これを静的HTMLの生成に使おうとしたのですが、CLIなコマンドは提供されているもののうまく動作せず、gulp経由でやってみようかと思ったら、今時にしては珍しくgulpプラグインがありませんでした(検索力不足かも)。
想像ですが、サーバサイドでレンダリングするために利用する事がメインで、静的HTML出力はあまり力を入れていないのかな?
ということでgulpプラグインを書いてみました。
https://github.com/kmtr/gulp-coffeekup
手元ではとりあえず、動作を確認しています。
(テンプレート言語がcoffee-scriptそのものである利点って何か実はよく分かっていない)
土曜日, 7月 12, 2014
水曜日, 6月 05, 2013
exportsされていないjavascriptやCoffeeScriptのメソッドをテストする。
半分以上、自分向けメモ。
exportsされていないjavascriptのメソッドをテストするにはどうするか。
理屈としては、以下の記事2つを読めばOK。要はjsを別コンテクストにロードして、その時にプライベートなメソッドを引き上げるわけですね。
Testing Private State and Mocking Dependencies
Nodeでプライベートな(exportsされてない)メソッドのテスト
不思議なのは、どちらの記事でも、node-mocksに触れられていない事(一番目の記事のコメントで触れられているだけ)。
これは一番目の記事のvojtajinaさんが作ったライブラリで、ざっくり言えば、解説されている内容が実装されているテスト用のライブラリ。
これを使えば、いちいち上記解説記事のコードを書かなくて済むわけですね。めでたしめでたし。
と思ったのですが、このライブラリ、JSは読み込めるのだけど、CoffeeScriptを直接読み込むことが出来ません(README.mdのサンプルテストコードはCoffeeScriptで書かれているのに)。
もちろん、JSにコンパイルすればよいのだけど、面倒なわけです。
というわけで、CoffeeScriptをロード出来るようにしてみました。
https://github.com/kmtr/node-mocks/tree/coffeescript
npmでインストールするなら、以下を実行。
可能な限りCoffeeScriptから出ずに、開発したい私みたいな人におすすめです。
一応、pull requestを送ってみたけどどうだろうか。
オリジナルと比べてcoffee-scriptへの依存が増えてしまったし。
exportsされていないjavascriptのメソッドをテストするにはどうするか。
理屈としては、以下の記事2つを読めばOK。要はjsを別コンテクストにロードして、その時にプライベートなメソッドを引き上げるわけですね。
Testing Private State and Mocking Dependencies
Nodeでプライベートな(exportsされてない)メソッドのテスト
不思議なのは、どちらの記事でも、node-mocksに触れられていない事(一番目の記事のコメントで触れられているだけ)。
これは一番目の記事のvojtajinaさんが作ったライブラリで、ざっくり言えば、解説されている内容が実装されているテスト用のライブラリ。
これを使えば、いちいち上記解説記事のコードを書かなくて済むわけですね。めでたしめでたし。
と思ったのですが、このライブラリ、JSは読み込めるのだけど、CoffeeScriptを直接読み込むことが出来ません(README.mdのサンプルテストコードはCoffeeScriptで書かれているのに)。
もちろん、JSにコンパイルすればよいのだけど、面倒なわけです。
というわけで、CoffeeScriptをロード出来るようにしてみました。
https://github.com/kmtr/node-mocks/tree/coffeescript
npmでインストールするなら、以下を実行。
npm install https://github.com/kmtr/node-mocks/tarball/coffeescript --save-dev
可能な限りCoffeeScriptから出ずに、開発したい私みたいな人におすすめです。
一応、pull requestを送ってみたけどどうだろうか。
オリジナルと比べてcoffee-scriptへの依存が増えてしまったし。
登録:
コメント (Atom)