--- updateTemplateValuesFromHTTPResp: response-header walk tests --- These cover the gap noted against listmonk's session-cookie round-trip: at replay time the live Set-Cookie/Authorization/etc. values must be pulled out of resp.Header and written into utils.TemplatizedValues so that subsequent tes
(
t *testing.T,
recordedHeader, liveHeader map[string]string,
initialTemplatedValues map[string]interface{},
)
| 1749 | // stale record-time one. |
| 1750 | |
| 1751 | func runHeaderUpdateTest( |
| 1752 | t *testing.T, |
| 1753 | recordedHeader, liveHeader map[string]string, |
| 1754 | initialTemplatedValues map[string]interface{}, |
| 1755 | ) (changed bool, final map[string]interface{}) { |
| 1756 | t.Helper() |
| 1757 | logger := zap.NewNop() |
| 1758 | |
| 1759 | templated := models.HTTPResp{ |
| 1760 | StatusCode: 302, |
| 1761 | Header: recordedHeader, |
| 1762 | Body: "", |
| 1763 | } |
| 1764 | live := models.HTTPResp{ |
| 1765 | StatusCode: 302, |
| 1766 | Header: liveHeader, |
| 1767 | Body: "", |
| 1768 | } |
| 1769 | |
| 1770 | current := make(map[string]interface{}, len(initialTemplatedValues)) |
| 1771 | prev := make(map[string]interface{}, len(initialTemplatedValues)) |
| 1772 | for k, v := range initialTemplatedValues { |
| 1773 | current[k] = v |
| 1774 | prev[k] = v |
| 1775 | } |
| 1776 | |
| 1777 | changed = updateTemplateValuesFromHTTPResp(logger, templated, live, current, prev) |
| 1778 | return changed, current |
| 1779 | } |
| 1780 | |
| 1781 | func TestUpdateTemplateValuesFromHTTPResp_SetCookie(t *testing.T) { |
| 1782 | recorded := map[string]string{ |
no test coverage detected