2016-06-22 2 views
0

メール機能を処理するために分度器コードをmailosaurに統合しようとしていますが、分度器でコードを取り込む際に値を取り出せません。 node.jsで同じコードを試しているとき、正しく動作していて、値を取得できます。分度器を使ってmailosaurから値を取得できませんが、node.jsと同じです。

Node.jsのファイルで:

var Mailosaur = require("mailosaur")("Your_API_Key"); 
var mailbox = new Mailosaur.Mailbox("MailboxID"); 
console.log("Here it begins!"); 
mailbox.getEmails(function(err, emails) { 
console.log(err); 
console.log(emails); 
console.log("Are you even going inside?");}); 

を実行してCMDで:以下のコードですノードは

の検索結果をfilename.js:CMDでJSON形式のデータを表示します。

分度器コードと同じことは機能しません。以下はコードです。

describe('Test Mail', function() { 
it('should display the data', function(){ 
    var Mailosaur = require("mailosaur")("Your_API_Key"); 
    var mailbox = new Mailosaur.Mailbox("MailboxID"); 

    console.log("Here it begins!"); 
    mailbox.getEmails(function(err, emails) { 
    console.log(err); 
    console.log(emails); 
    console.log("Are you even going inside?");});})}); 

実行、それはそれぞれのspecファイルを言及する設定ファイルを使用して:分度器は

の検索結果をconfig.jsの:トップのみログはすなわち表示され、内容を表示しない「ことが始まるここに!」上記の場合と同じようにnode.js.

何か不足している場合に備えてお勧めします。

答えて

1

ここでは、実際に分度器の制御フローにいくつかの動作をスケジュールするわけではないので、ジャスミンはテストが終了したと考えます。

チェックこれ - 制御フローは終了する前に空になるまで自動的に待機各々はスペックよう http://www.protractortest.org/#/control-flow

分度器はジャスミンを適応させます。このようなあなたのコードの何かのために

役立つかもしれない - ちょうど流れを制御する約束置く:応答のための

describe('Test Mail', function() { 
    it('should display the data', function(){ 
     var deferred = protractor.promise.defer(); 
     var Mailosaur = require("mailosaur")("Your_API_Key"); 
     var mailbox = new Mailosaur.Mailbox("MailboxID"); 

     console.log("Here it begins!"); 
     mailbox.getEmails(function(err, emails) { 
      console.log(err); 
      console.log(emails); 
      console.log("Are you even going inside?"); 
      deferred.resolve(); 
     }); 
    }) 
}); 
+0

感謝しますが、それはこのように動作しません。コールバック関数が終了した後に睡眠を追加してみると、期待通りの結果が得られました。しかし、私は睡眠を使用するよりも、より良いアプローチを探していました。 – Ankit

関連する問題