在Jest-CLI中测试时如何使用superagent?

时间:2015-05-14 14:23:22

标签: ajax testing jasmine jestjs superagent

我需要从远程网址中获取测试中的一些实际数据。我Superagent并没有被嘲笑。我已经通过在node_modules/superagent/中添加unmockedModulePathPatterns来完成此操作。

这是我要测试的文件,永远不会调用.end()函数。

这是我的测试,因超时错误而失败。

jest.dontMock("../Stocks.js");
jest.dontMock("superagent");

describe("Stock Actions", () => {
  var makeRequest = require('../Stocks')

  pit("doesn't crash", function () {
    var promise = makeRequest("Hello World")

    promise.then(function (str) {
      expect(str).toBe("yay");
    });

    return promise;
  });
});

这是它试图测试的模块:

import Reflux     from 'reflux';
import request    from 'superagent';

console.log("request-superagent", request)

const makeRequest = Reflux.createAction({ asyncResult: true });

const Store = Reflux.createStore({
  init() {
    this.listenTo(makeRequest, 'onMakeRequest');
  },

  onMakeRequest(url) {

    request('GET', 'http://api.example.com/list/')
        .end(function (err, res) {
          console.log("res.text", res.text);
          if (!res.ok) {
            makeRequest.failed("aw");
          }

          makeRequest.completed("yay");
        });
  }
});

module.exports = makeRequest;

如何在jest-cli中使用superagent?

0 个答案:

没有答案