2012-06-01 4 views
7

私は単純なJavaScriptゲームを作成してGoogleクロージャツールについて学習しています。 jsTestDriverを設定してクロージャーライブラリでうまく動作するようにする方法がわかりません。jsTestDriverでクロージャーライブラリを使用する

具体的には、goog.requireメカニズムを使用して、手動で設定ファイルにすべて追加するのではなく、追加のJavaScriptファイルを含めたいと思います。

私は自動的にテスト/ jsTestDriver.conf.protoファイル

#!/bin/bash 
cp tests/jsTestDriver.conf.proto tests/jsTestDriver.conf 
libs/closure-library/closure/bin/build/closurebuilder.py --root="./libs/closure-library" --root="./js" --namespace="lds" | sed "s#^# - \.\./#" >> tests/jsTestDriver.conf 

設定ファイルへの依存関係を書くための簡単なスクリプトは単純なテンプレートで作らmeyerteeの提案に続き:

test: 
    - "*.js" 
load: 
    - ../libs/knockout-2.1.0.js 
# Crucial, the load key needs to be last, and this comment must be followed by a newline. 

それ非常に壊れやすいスクリプトですが、(私以外の)誰かがそれが有用であることを願っています。

+1

あなたのソリューションを共有してくれてありがとう、私もPythonスクリプトを使ってプロジェクトを変更しました(私は実際にcalcdeps.pyを使っています)。コンパイラを使うよりも優れています。これは、プロジェクトにまだリンクされていない依存関係を取り除くためです(新しいコードをテストする方が良い)。 – meyertee

答えて

4

あなたは、閉鎖コンパイルは、マニフェストファイルを生成させることにより、半自動的にその意志出力依存関係の正しい順序ですべてのファイルを、それを行うことができます。そのファイルを相対パスに変換し、JsTestDriver設定ファイルに貼り付けることができます。それが私のやり方です。
この変換を自動的に行うスクリプトを作成することもできます。

これは、関連するコンパイラの引数です:

--output_manifest manifest.MF 

Closure Compiler's Google Code Wiki

編集上のいくつかの詳細があります あなたが依存関係を計算するのに役立ついくつかのPython scriptsもあります。 calcdeps.pyまたはclosurebuilder.pyを使用して、マニフェストファイルを生成することができます。マニフェストファイルには、コードによって「必要」されていないファイルも含まれます。

関連する問題