2013-02-19 9 views
6

最新版のyeomanでカスタムジェネレーターを作りたいと思っていますが、何か難しかったです。私は様々な情報源とサンプル(Webアプリケーションや角度ジェネレータなど)を掘り下げてきましたが、まだいくつかの質問があります。Yeomanカスタムジェネレーター

  1. ジェネレータをテストするワークフローは何ですか?ジェネレータそのもの1つのプロジェクトがある場合は、yo my-generatorを実行するために新しいディレクトリを作成し続けますか?

  2. yo 1.0のジェネレータフレームワークがまったく変更されていますか?変化が激しかったか?

  3. ジェネレータはどのようにグローバルyoバイナリに登録されますか?

ありがとう。

答えて

6

ジェネレータをテストするワークフローは何ですか?

私はジェネレータ角の次のカップルの日にこれに取り組んでいます。あなたはtrack my progress on Githubです。残念ながら、1つのyeomanコマンドからyoを使用してboweryoを使用すると、あまりにも多くの例はありません。私はGenerator.prototype.methodのユニットテストと、yonpmbower、およびgruntを実行するbashスクリプトの作成を含むE2Eテストのいくつかのレベルがあると思います。

ジェネレータのフレームワークはまったく1.0のベータ版に変更されていますか?変化が激しかったか?

ジェネレーター・アングルでの移植で私が経験したことは、あまりにも多くの変更を見たことがありません。新しい便利なオプションのsimplified APIがあります。

ジェネレータはどのようにグローバルyoバイナリに登録されますか?

答えは今のところありません。ジェネレータをプロジェクトディレクトリにインストール/使用します。私は何とか誤ったシンボリックリンクのために動作していましたが、これは推奨される方法ではありません。

+0

感謝を介してアクセス

したがってgenerator-mtv-raps。 – frosty

7

この質問は数ヶ月古いですが、私はそれがその多くを知っている今、それを見つけた人のために有用だと思うhttp://yeoman.io/generators.html

質問1で説明されています:あなたの発電機をテスト

ローカルにすることができ簡単に行う。たとえば、あなたの発電機は今、あなたがしなければ

$ cd ~/dev/generator-mtv-raps/ 
$ npm link 

"発電-MTV-ラップ"

呼び出された場合:

$ cd ~/dev/mytest/ 
$ yo mtv-raps 

それが構築されます。

さらに、発電機をモカでテストするユニットはかなり簡単です。内蔵のテストヘルパーのセットがあります。あなたが必要なものの基本は発電機を壊すことなく必要になることができることを発電Webアプリケーションのテストhttps://github.com/yeoman/generator-webapp/blob/master/test/test.js

  1. テストで見つけることができるに対してテストされます。 helpers.mockPrompt
  2. テストあなたが嘲笑プロンプト値が作成されたファイルに挿入されていることをhelpers.assertFiles
  3. テストを経て作成された作成するすべてのファイルと
  4. モックあなたのプロンプト。

数字4は種類が揃っていないため、予想されるファイルの配列にはチェックする正規表現を渡すことができます。テストヘルパーについてもっと知りたい場合は、ソースが最適な場所です。 https://github.com/yeoman/generator/blob/master/lib/test/helpers.js

質問2:

ジェネレータがグローバルにそれらをインストールする(または、上記のように、それらを結ぶ)と命名規則を使用してyoにバインドされています。すでにbtford

質問3で答えました。すべてのジェネレータは "ジェネレータ"から " - "、次に "名前"で始まります。大きな応答用$ yo mtv-raps

+0

あなたは時間を節約しました! – Nick

+0

発電機のページへのリンクが壊れています。メインサイトhttp://yeoman.io/へ –