アプリで nimble.js を使用し、テスト用に mocha + chai を使用していますが、昨日、それらが競合している可能性があることがわかりました。
基本的に、ブラウザで特定の http リクエストを実行すると、
Unauthorized.
これが正しい応答です。
しかし、ノードのhttpモジュールを使用して、同じURLを使用してhttpリクエストを行うと、
not found
これは私を混乱させます。
サーバーコンソールに表示されるため、httpリクエストが正しいURLを取得したことはわかっています。ブラウザにコピーして貼り付けても確認できます。
さらに、コードを nimble.parallel 関数までたどりました。
私はこのようなものを持っています:
// var _ = require('nimble');
_.parallel(
[
fetch_account(options)
, fetch_invoice(options)
, fetch_site(options)
, fetch_account_stats(options)
]
, render(res, subdomain)
);
// each of the function above returns another function, no simple API gotcha here
ブラウザーの場合、エラーはフェッチ関数で正しく識別され、レンダリングの場合でも正しく識別されました。
mocha の場合、fetch 関数でエラーが正しく識別されましたが、render は実行されませんでした。したがって、モカは独自の res.render("not found"); を実行したに違いありません。
何か案は?