File tree 3 files changed +39
-38
lines changed
3 files changed +39
-38
lines changed Original file line number Diff line number Diff line change @@ -124,11 +124,12 @@ def remove_and_replace!(outer_extensions)
124
124
125
125
clear
126
126
replaced = Message ::Extensions . new
127
- tmp1 . each { |_ , v | self << v ; replaced << v }
128
- tmp2 . each { |_ , v | self << v }
129
127
128
+ tmp1 . each_value { |v | self << v ; replaced << v }
129
+ tmp2 . each_value { |v | self << v }
130
130
replaced << Message ::Extension ::ECHOuterExtensions . new ( tmp2 . keys ) \
131
131
unless tmp2 . keys . empty?
132
+
132
133
replaced
133
134
end
134
135
Original file line number Diff line number Diff line change 119
119
. to eq padding_encoded_ch_inner . length
120
120
end
121
121
end
122
-
123
- context 'removing and replacing extensions from EncodedClientHelloInner' do
124
- let ( :extensions ) do
125
- extensions , = Client . new ( nil , 'localhost' ) . send ( :gen_ch_extensions )
126
- extensions
127
- end
128
-
129
- let ( :no_key_share_exs ) do
130
- Extensions . new (
131
- extensions . filter { |k , _ | k != ExtensionType ::KEY_SHARE } . values
132
- )
133
- end
134
-
135
- it 'should be equal remove_and_replace! with []' do
136
- cloned = extensions . clone
137
- expect ( extensions . remove_and_replace! ( [ ] ) )
138
- . to eq cloned
139
- end
140
-
141
- it 'should be equal remove_and_replace! with [key_share]' do
142
- expected = extensions . filter { |k , _ | k != ExtensionType ::KEY_SHARE }
143
- expected [ ExtensionType ::ECH_OUTER_EXTENSIONS ] = \
144
- Extension ::ECHOuterExtensions . new ( [ ExtensionType ::KEY_SHARE ] )
145
- got = extensions . remove_and_replace! ( [ ExtensionType ::KEY_SHARE ] )
146
- expect ( got . keys ) . to eq expected . keys
147
- expect ( got [ ExtensionType ::ECH_OUTER_EXTENSIONS ] . outer_extensions )
148
- . to eq expected [ ExtensionType ::ECH_OUTER_EXTENSIONS ] . outer_extensions
149
- end
150
-
151
- it 'should be equal remove_and_replace! with no key_share extensions' \
152
- ' & [key_share]' do
153
- cloned = no_key_share_exs . clone
154
- expect ( no_key_share_exs . remove_and_replace! ( [ ExtensionType ::KEY_SHARE ] ) )
155
- . to eq cloned
156
- end
157
- end
158
122
end
Original file line number Diff line number Diff line change 182
182
. to raise_error ( ErrorAlerts )
183
183
end
184
184
end
185
+
186
+ context 'removing and replacing extensions from EncodedClientHelloInner' do
187
+ let ( :extensions ) do
188
+ extensions , = Client . new ( nil , 'localhost' ) . send ( :gen_ch_extensions )
189
+ extensions
190
+ end
191
+
192
+ let ( :no_key_share_exs ) do
193
+ Extensions . new (
194
+ extensions . filter { |k , _ | k != ExtensionType ::KEY_SHARE } . values
195
+ )
196
+ end
197
+
198
+ it 'should be equal remove_and_replace! with []' do
199
+ cloned = extensions . clone
200
+ expect ( extensions . remove_and_replace! ( [ ] ) )
201
+ . to eq cloned
202
+ end
203
+
204
+ it 'should be equal remove_and_replace! with [key_share]' do
205
+ expected = extensions . filter { |k , _ | k != ExtensionType ::KEY_SHARE }
206
+ expected [ ExtensionType ::ECH_OUTER_EXTENSIONS ] = \
207
+ Extension ::ECHOuterExtensions . new ( [ ExtensionType ::KEY_SHARE ] )
208
+ got = extensions . remove_and_replace! ( [ ExtensionType ::KEY_SHARE ] )
209
+ expect ( got . keys ) . to eq expected . keys
210
+ expect ( got [ ExtensionType ::ECH_OUTER_EXTENSIONS ] . outer_extensions )
211
+ . to eq expected [ ExtensionType ::ECH_OUTER_EXTENSIONS ] . outer_extensions
212
+ end
213
+
214
+ it 'should be equal remove_and_replace! with no key_share extensions' \
215
+ ' & [key_share]' do
216
+ cloned = no_key_share_exs . clone
217
+ expect ( no_key_share_exs . remove_and_replace! ( [ ExtensionType ::KEY_SHARE ] ) )
218
+ . to eq cloned
219
+ end
220
+ end
185
221
end
You can’t perform that action at this time.
0 commit comments