2

visitルートに従って統合テストを行うために、ヘルパーを使用したいと思います。

App.IndexRoute = Em.Route.extend
    model: ->
        App.Movies.find "The Godfather"

しかし、私のテストは合格しません。

assertion failed: You have turned on testing mode, which disabled the run-loop's autorun.
You will need to wrap any code with asynchronous side-effects in an Ember.run

残念ながら、次のようにまとめても役に立ちません。

App.IndexRoute = Em.Route.extend
    model: ->
        Em.run =>
            App.Movies.find "The Godfather"

(ラッピングもしてます@App = Em.Application.create())

コードを実行ループにラップする正しい方法は何ですか?

rc.5カルマと一緒に使っています。

4

2 に答える 2

0

データをフェッチしようとしていたサーバーが404を返し、それが原因で Ember がアサートしたことが判明しました。

サーバー側のIDを修正した後、まったく必要がないことが判明しましたEm.run()

詳細については、GitHub を参照してください: https://github.com/emberjs/ember.js/issues/3051

于 2013-08-02T09:48:31.140 に答える
-1

テスト用のデータをどのように構築しますか? Ember.run にラップする必要があるのは、その部分 (またはプロパティの設定) です。

FixtureAdapter を使用すると、次のようになります。

Ember.run(function() {
  App.Movie.FIXTURES=[{ name: "the Godfather" }, { name: "Apocalypse Now" }];
});
于 2013-08-02T08:31:04.660 に答える