@@ -69,12 +69,13 @@ func TestExportData_MessageTooLarge(t *testing.T) {
6969
7070func TestMakeFranzMessages_RecordHeaders (t * testing.T ) {
7171 recordHeaders := configopaque.MapList {
72- {Name : "custom-header-1 " , Value : configopaque .String ("value-1 " )},
73- {Name : "custom-header-2 " , Value : configopaque .String ("value-2 " )},
72+ {Name : "static-key-ONLY " , Value : configopaque .String ("static-value " )},
73+ {Name : "shared-key " , Value : configopaque .String ("static- value-override " )},
7474 }
7575
7676 md := client .NewMetadata (map [string ][]string {
77- "dynamic-key" : {"dynamic-value" },
77+ "dynamic-key-ONLY" : {"dynamic-value" },
78+ "shared-key" : {"dynamic-value-wins" },
7879 })
7980 ctx := client .NewContext (t .Context (), client.Info {Metadata : md })
8081
@@ -89,22 +90,22 @@ func TestMakeFranzMessages_RecordHeaders(t *testing.T) {
8990 }
9091
9192 records := makeFranzMessages (msgs , recordHeaders )
92- setMessageHeaders (ctx , records , []string {"dynamic-key" })
93+ setMessageHeaders (ctx , records , []string {"dynamic-key-ONLY" , "shared-key " })
9394
9495 require .Len (t , records , 1 , "expected exactly 1 record" )
9596 record := records [0 ]
9697
9798 assert .Equal (t , "test-topic" , record .Topic )
9899 assert .Equal (t , []byte ("test-payload" ), record .Value )
99100
100- require .Len (t , record .Headers , 3 , "expected exactly 3 headers (2 static, 1 dynamic) " )
101+ require .Len (t , record .Headers , 4 , "expected exactly 4 headers on the record " )
101102
102103 headerMap := make (map [string ]string )
103104 for _ , h := range record .Headers {
104105 headerMap [h .Key ] = string (h .Value )
105106 }
106107
107- assert .Equal (t , "value-1 " , headerMap ["custom-header-1" ] )
108- assert .Equal (t , "value-2 " , headerMap ["custom-header-2" ] )
109- assert .Equal (t , "dynamic-value" , headerMap ["dynamic -key" ])
108+ assert .Equal (t , "static-value " , headerMap ["static-key-ONLY" ], "static headers unique key failed" )
109+ assert .Equal (t , "dynamic-value " , headerMap ["dynamic-key-ONLY" ], "dynamic headers unique key failed" )
110+ assert .Equal (t , "dynamic-value-wins " , headerMap ["shared -key" ], "Precedence for common key failed" )
110111}
0 commit comments