Как узнать, соответствует ли nock запросу или нет?
Как узнать, соответствует ли nock запросу или нет? Есть ли способ записать в консоль информацию о том, соответствует ли nock запросам или нет?
4 ответа
В log
функция больше не доступна в более новых версиях nock, например v13.0.0, но вы можете установить DEBUG
переменная среды для nock.*
как описано здесь https://github.com/nock/nock, чтобы регистрировать каждый шаг процесса сопоставления. Например:
export DEBUG=nock.* && yarn test
если вы используете пряжу для проведения тестов.
Это очень просто. Просто добавь .log(console.log)
к твоему предмету!
nock('https://github.com')
.get('/')
.log(console.log)
По сути, nock проверяет все активные перехватчики, пока не будет найдено совпадение для вашего запроса (в случае, если у вас есть несколько перехватчиков nock, высмеивающих различные запросы). Итак, что будет зарегистрировано с помощью .log(console.log)
является,
- полный URL-адрес, на который делается запрос.
- URL от перехватчика
- истина или ложь, в зависимости от сценария матча. Надеюсь, что это поможет вам решить загадки Nock:)
Вы можете регистрировать запросы к консоли, используя:
nock.recorder.rec();
Вы также можете прослушивать эмиттеры событий nock для создания обратного вызова всякий раз, когда запрос перехватывается. Например:
const requestCallback = () => {
console.log('Request was called');
}
nock('https://example.org')
.persist()
.get('/')
.on('request', requestCallback);