Hi I am trying out the nock library but am struggling with matching random patterns on query strings. I thought something like the code below should work but I can not get anything to work.
var nock, request; request = require('request'); nock = require('nock'); nock("http://www.google.com").filteringPath(/.*/g).get("/").reply(200, "this should work?"); request("http://www.google.com?value=bob", function(err, res, body) { return console.log(body); });
Nock works by overriding the http. request and http. ClientRequest functions, intercepting all requests made to a specified URL and returning specified responses that mimic the data that the real URL would return.
you can set up nock like this to simulate a 500 error: nock('https://google.com') . get('/') . reply(500, 'FAILED!
Specifying Request HeadersThe function will be passed the header value. If reqheaders is not specified or if host is not part of it, Nock will automatically add host value to request header. If no request headers are specified for mocking then Nock will automatically skip matching of request headers.
I haven't used this before, but from reading the docs maybe this will help.
How about something like this:
var nock = require('nock'); var request = require ('request'); nock("http://www.google.com") .filteringPath(function(path){ return '/'; }) .get("/") .reply(200, "this should work?"); request("http://www.google.com?value=bob", function(err, res, body) { return console.log(body); });
We can use regexp too
nock("http://www.google.com") .get(/.*/)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With