fix: merge runtime and channel header overrides, skip missing source headers

This commit is contained in:
Seefs
2026-02-25 16:12:34 +08:00
parent bb0c663dbe
commit 305dbce4ad
5 changed files with 234 additions and 13 deletions

View File

@@ -80,7 +80,7 @@ func TestProcessHeaderOverride_NonTestKeepsClientHeaderPlaceholder(t *testing.T)
require.Equal(t, "trace-123", headers["X-Upstream-Trace"])
}
func TestProcessHeaderOverride_RuntimeOverrideHasPriority(t *testing.T) {
func TestProcessHeaderOverride_RuntimeOverrideMergesWithChannelOverride(t *testing.T) {
t.Parallel()
gin.SetMode(gin.TestMode)
@@ -107,8 +107,7 @@ func TestProcessHeaderOverride_RuntimeOverrideHasPriority(t *testing.T) {
require.NoError(t, err)
require.Equal(t, "runtime-value", headers["X-Static"])
require.Equal(t, "runtime-only", headers["X-Runtime"])
_, ok := headers["X-Legacy"]
require.False(t, ok)
require.Equal(t, "legacy-only", headers["X-Legacy"])
}
func TestProcessHeaderOverride_PassthroughSkipsAcceptEncoding(t *testing.T) {