Sinon: Поддельный сервер Sinon не влияет на axios в узле

Созданный на 19 окт. 2015  ·  6Комментарии  ·  Источник: sinonjs/sinon

Использование сервера поддельного Синона s, кажется , не влияет на AXIOS , который использует http в среде узла (и XMLHttpRequest для браузера).

Я использую Mocha . Я избегаю бегунов по карме, потому что не вижу в этом необходимости. Нет, если только узел http не поддерживается.

Вот демо . Просто клонируйте его и запустите npm test .

Самый полезный комментарий

Я решил это, используя псевдонимы методов запроса axios, вместо того, чтобы передавать конфигурацию и инициировать запрос. То есть вместо
axios(config)

я использовал
axios[method](url, data, config)

А сейчас,
sandbox.stub(axios, "get").returns(Promise.resolve({status:200, body: searchResponse}));

Это чище, чем использование библиотеки moxios.

Ответ на Stackoverflow

Все 6 Комментарий

Актуальные тесты здесь: https://github.com/srph/axios-response-logger/blob/master/tests/spec.js

Я бы предположил, что порядок может объяснить поведение, но не совсем уверен, правильно ли явное создание песочницы. Придется исследовать позже.

Похоже, это все еще не работает с аксиомами.

http://stackoverflow.com/q/41516044/340760

Не уверен, почему я не закрыл это в первый раз: после проверки я вижу, что тесты выполняются в Node. Это совершенно не поддерживается _естественно_ для реализации XHR. Если бы тесты запускались в браузере, скажем, с использованием mochify или Karma, это было бы другое дело, поскольку заглушки XHR нацелены на среду браузера.

@brunolm : Я до сих пор не видел, чтобы в браузере выполнялся тест, который supertest (для SuperAgent).

К вашему сведению: у axios уже есть собственная библиотека заглушек, moxios .

Я решил это, используя псевдонимы методов запроса axios, вместо того, чтобы передавать конфигурацию и инициировать запрос. То есть вместо
axios(config)

я использовал
axios[method](url, data, config)

А сейчас,
sandbox.stub(axios, "get").returns(Promise.resolve({status:200, body: searchResponse}));

Это чище, чем использование библиотеки moxios.

Ответ на Stackoverflow

Была ли эта страница полезной?
0 / 5 - 0 рейтинги