27 lines
593 B
Lua
27 lines
593 B
Lua
local _M = {}
|
|
|
|
local configuration = require("configuration")
|
|
local resolver = require("resty.dns.resolver")
|
|
local old_resolver_new = resolver.new
|
|
|
|
local function reset(nameservers)
|
|
configuration.nameservers = nameservers or { "1.1.1.1" }
|
|
end
|
|
|
|
function _M.mock_new(func, nameservers)
|
|
reset(nameservers)
|
|
resolver.new = func
|
|
end
|
|
|
|
function _M.mock_dns_query(response, err)
|
|
reset()
|
|
resolver.new = function(self, options)
|
|
local r = old_resolver_new(self, options)
|
|
r.query = function(self, name, options, tries)
|
|
return response, err
|
|
end
|
|
return r
|
|
end
|
|
end
|
|
|
|
return _M
|