2016-07-25 6 views
0

約束を返す関数があります。ここに関数のコードがあります。mochaとchaiでAsync関数を呼び出している関数のテストケース

function firstFunction() { 
    return new Promise (function (resolve , return) { 
      callApi(function(data, error){ 
        if (data) resolve (data) 
        else if (error) reject (error) 
      }) 
    }) 
} 

あなたは、その返送データをいくつかのAPIを呼び出し、その結果にされて見ることができるように。

私は今、私はsecondfunctionのためのテストケースを書きたい

function secondFunction() { 
    firstFunction().then(function (data , error) { 
      return data 
    }) 
} 

この関数を呼び出す別の関数を持っています。これを行うことはできません。私は関数でもロガーを入れたが動作していないようですが、ここにあなたがモカテストで約束を返すべき約束をテストし、doneを使用しないように

describe.only ("network_test" , function() { 
     it ("test 01", function (done){ 

     secondFunction (function (data) { 
      console.log(data); 
      done() 
     }) 
     }) 
    }) 

答えて

0

私のテストケースです。

describe.only('network_test', function() { 
    it('test 01', function() { 
     return secondFunction(function (data) { 
      console.log(data); 
     }); 
    }); 
}); 

アップデート:コメントについてfirstFunctionrejectで、あなたのエラーハンドラを確認するにはundefindedある

あなたのテストのようなものでなければなりません。 secondFunctionでエラーが発生すると、決して解決されないことが約束されます。

+0

が機能しません。そのことを言い続ける エラー:15000msのタイムアウトを超えました。このテストでdone()コールバックが呼び出されていることを確認してください。 firstFunctionのテストケースが動作しています –

関連する問題