Support deleting NSMutableURLRequest headers by calling setValue:forHTTPHeaderField: with nil value.

This commit is contained in:
Frederik Seiffert 2023-11-14 22:40:25 +01:00 committed by Frederik Seiffert
parent a67e28ad67
commit fd7f11a134
4 changed files with 32 additions and 5 deletions

View file

@ -43,6 +43,18 @@ int main()
[mutable addValue: @"value2" forHTTPHeaderField: @"gnustep"];
PASS_EQUAL([mutable valueForHTTPHeaderField: @"gnustep"], (@"value1,value2"),
"Handle multiple values for an HTTP header field");
[mutable setAllHTTPHeaderFields: [NSDictionary dictionaryWithObject: @"object" forKey: @"key"]];
PASS_EQUAL([mutable allHTTPHeaderFields],
[NSDictionary dictionaryWithObjectsAndKeys:@"object", @"key", @"value1,value2", @"gnustep", nil],
"setAllHTTPHeaderFields adds header");
[mutable setValue: @"value3" forHTTPHeaderField: @"gnustep"];
PASS_EQUAL([mutable allHTTPHeaderFields],
[NSDictionary dictionaryWithObjectsAndKeys:@"object", @"key", @"value3", @"gnustep", nil],
"Update header field");
[mutable setValue: nil forHTTPHeaderField: @"gnustep"];
PASS_EQUAL([mutable allHTTPHeaderFields],
[NSDictionary dictionaryWithObjectsAndKeys:@"object", @"key", nil],
"Remove header field");
[mutable release];
mutable = [NSMutableURLRequest new];