[英]Intercept all requests with different verbs in nock
這就是我的一個攔截函數現在的樣子:
interceptWithError() {
nock(baseUrl)
.get(/.*/)
.replyWithError(500);
nock(baseUrl)
.put(/.*/)
.replyWithError(500);
nock(baseUrl)
.post(/.*/)
.replyWithError(500);
nock(baseUrl)
.delete(/.*/)
.replyWithError(500);
}
我想避免重復,並通過做這樣的事情給它更多的靈活性:
interceptWithError(params) {
const verb = params && params.verb;
const stat = params && params.stat;
return nock(baseUrl)
.[verb] // something like this!!!
.replyWithError(stat)
}
有辦法嗎?
這就是我想出來的:)
baseNock(url) {
return this.nock(url)
.replyContentLength()
.defaultReplyHeaders({ 'Content-Type': 'application/json' });
}
interceptWithError(verbCodeMap) {
const verbs = (verbCodeMap && Object.keys(verbCodeMap))
|| ['post', 'get', 'put', 'delete'];
return verbs.map(verb =>
baseNock(someUrl)[verb](/.*/)
.replyWithError((verbCodeMap && verbCodeMap[verb]) || 500));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.