File tree Expand file tree Collapse file tree 3 files changed +18
-2
lines changed
main/java/org/springframework/http/server/reactive
test/java/org/springframework/http/server/reactive Expand file tree Collapse file tree 3 files changed +18
-2
lines changed Original file line number Diff line number Diff line change @@ -124,7 +124,7 @@ public List<String> get(Object key) {
124
124
@ Override
125
125
public List <String > put (String key , @ Nullable List <String > value ) {
126
126
List <String > previousValues = this .headers .getAll (key );
127
- this .headers .add (key , value );
127
+ this .headers .set (key , value );
128
128
return previousValues ;
129
129
}
130
130
Original file line number Diff line number Diff line change @@ -138,6 +138,7 @@ public List<String> get(Object key) {
138
138
@ Nullable
139
139
public List <String > put (String key , List <String > value ) {
140
140
List <String > previousValues = get (key );
141
+ this .headers .removeHeader (key );
141
142
value .forEach (v -> this .headers .addValue (key ).setString (v ));
142
143
return previousValues ;
143
144
}
Original file line number Diff line number Diff line change 16
16
17
17
package org .springframework .http .server .reactive ;
18
18
19
+ import java .util .Arrays ;
19
20
import java .util .Locale ;
20
21
21
22
import io .netty .handler .codec .http .DefaultHttpHeaders ;
22
23
import io .undertow .util .HeaderMap ;
23
24
import org .apache .tomcat .util .http .MimeHeaders ;
24
25
import org .eclipse .jetty .http .HttpFields ;
26
+ import org .junit .After ;
25
27
import org .junit .Test ;
26
28
import org .junit .runner .RunWith ;
27
29
import org .junit .runners .Parameterized ;
@@ -57,6 +59,11 @@ public static Object[][] arguments() {
57
59
};
58
60
}
59
61
62
+ @ After
63
+ public void tearDown () {
64
+ this .headers .clear ();
65
+ }
66
+
60
67
@ Test
61
68
public void getWithUnknownHeaderShouldReturnNull () {
62
69
assertNull (this .headers .get ("Unknown" ));
@@ -96,4 +103,12 @@ public void addShouldKeepOrdering() {
96
103
assertEquals ("first" , this .headers .get ("TestHeader" ).get (0 ));
97
104
}
98
105
99
- }
106
+ @ Test
107
+ public void putShouldOverrideExisting () {
108
+ this .headers .add ("TestHeader" , "first" );
109
+ this .headers .put ("TestHeader" , Arrays .asList ("override" ));
110
+ assertEquals ("override" , this .headers .getFirst ("TestHeader" ));
111
+ assertEquals (1 , this .headers .get ("TestHeader" ).size ());
112
+ }
113
+
114
+ }
You can’t perform that action at this time.
0 commit comments