テストには laika を、ルーティングにはmeteor-routerパッケージを使用しています。いくつかのページに移動し、フォームに入力し、送信し、成功メッセージを確認するテストを実行したいのですが、ナビゲーション部分で立ち往生しています。これは私の最初の試みでした:
var assert = require('assert');
suite('Router', function() {
test('navigate', function(done, server, client) {
client.eval(function() {
Meteor.Router.to('test');
var title = $('h1').text();
emit('title', title);
})
.once('title', function(title) {
assert.equal(title, 'Test');
done();
});
});
});
Meteor.Router.to
にはコールバックがなく、新しいページが読み込まれたときに次の行を実行する方法がわからないため、これは機能しません。
私はこのようなものでも試しました
var page = require('webpage').create();
page.open('http://localhost:3000/test', function () {
...
}
しかし、私はエラーが発生しましたError: Cannot find module 'webpage'
編集
Iron routerに移行するので、それに関する回答も役に立ちます。