Skip to content

Commit ee0bc0e

Browse files
committed
test(camel): add tests for access() phase
1 parent 72f87a6 commit ee0bc0e

1 file changed

Lines changed: 40 additions & 2 deletions

File tree

spec/policy/camel/camel_spec.lua

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,48 @@ describe('Camel policy', function()
5858

5959
it("invalid protocol", function()
6060
proxy:rewrite(context)
61-
local result = context:get_http_proxy(
62-
{}, {scheme="invalid"})
61+
local result = context.get_http_proxy({scheme="invalid"})
6362
assert.is_nil(result)
6463
end)
6564

65+
it("nil scheme", function()
66+
proxy:rewrite(context)
67+
local result = context.get_http_proxy({})
68+
assert.is_nil(result)
69+
end)
70+
71+
end)
72+
73+
describe(".access", function()
74+
it("sets skip_https_connect_on_proxy on context", function()
75+
local proxy = camel_policy.new({ all_proxy = all_proxy_val })
76+
77+
local mock_upstream = { set_skip_https_connect_on_proxy = stub.new() }
78+
context.get_upstream = function() return mock_upstream end
79+
80+
proxy:access(context)
81+
82+
assert.is_true(context.skip_https_connect_on_proxy)
83+
end)
84+
85+
it("calls set_skip_https_connect_on_proxy on upstream", function()
86+
local proxy = camel_policy.new({ all_proxy = all_proxy_val })
87+
88+
local mock_upstream = { set_skip_https_connect_on_proxy = stub.new() }
89+
context.get_upstream = function() return mock_upstream end
90+
91+
proxy:access(context)
92+
93+
assert.stub(mock_upstream.set_skip_https_connect_on_proxy).was_called()
94+
end)
95+
96+
it("does not error when get_upstream returns nil", function()
97+
local proxy = camel_policy.new({ all_proxy = all_proxy_val })
98+
99+
context.get_upstream = function() return nil end
100+
101+
assert.has_no.errors(function() proxy:access(context) end)
102+
assert.is_true(context.skip_https_connect_on_proxy)
103+
end)
66104
end)
67105
end)

0 commit comments

Comments
 (0)