MCPcopy Create free account
hub / github.com/mitmproxy/mitmproxy / thash

Function thash

test/mitmproxy/addons/test_serverplayback.py:271–297  ·  view source on GitHub ↗
(r, r2, setter)

Source from the content-addressed store, hash-verified

269
270
271def thash(r, r2, setter):
272 s = serverplayback.ServerPlayback()
273 with taddons.context(s) as tctx:
274 s = serverplayback.ServerPlayback()
275 tctx.configure(s, server_replay_ignore_payload_params=["param1", "param2"])
276
277 setter(r, paramx="x", param1="1")
278
279 setter(r2, paramx="x", param1="1")
280 # same parameters
281 assert s._hash(r) == s._hash(r2)
282 # ignored parameters !=
283 setter(r2, paramx="x", param1="2")
284 assert s._hash(r) == s._hash(r2)
285 # missing parameter
286 setter(r2, paramx="x")
287 assert s._hash(r) == s._hash(r2)
288 # ignorable parameter added
289 setter(r2, paramx="x", param1="2")
290 assert s._hash(r) == s._hash(r2)
291 # not ignorable parameter changed
292 setter(r2, paramx="y", param1="1")
293 assert not s._hash(r) == s._hash(r2)
294 # not ignorable parameter missing
295 setter(r2, param1="1")
296 r2.request.content = b"param1=1"
297 assert not s._hash(r) == s._hash(r2)
298
299
300def test_ignore_payload_params():

Callers 1

Calls 3

_hashMethod · 0.95
contextMethod · 0.80
configureMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…