Properly merges both requests and session hooks. This is necessary because when request_hooks == {'response': []}, the merge breaks Session hooks entirely.
(
request_hooks: _t.HooksType,
session_hooks: _t.HooksType,
dict_class: type = OrderedDict,
)
| 106 | |
| 107 | |
| 108 | def merge_hooks( |
| 109 | request_hooks: _t.HooksType, |
| 110 | session_hooks: _t.HooksType, |
| 111 | dict_class: type = OrderedDict, |
| 112 | ) -> _t.HooksType: |
| 113 | """Properly merges both requests and session hooks. |
| 114 | |
| 115 | This is necessary because when request_hooks == {'response': []}, the |
| 116 | merge breaks Session hooks entirely. |
| 117 | """ |
| 118 | if session_hooks is None or session_hooks.get("response") == []: |
| 119 | return request_hooks |
| 120 | |
| 121 | if request_hooks is None or request_hooks.get("response") == []: |
| 122 | return session_hooks |
| 123 | |
| 124 | return merge_setting(request_hooks, session_hooks, dict_class) |
| 125 | |
| 126 | |
| 127 | class SessionRedirectMixin: |
no test coverage detected