public void RenameKeyTest() { List<KeyValuePair<string, string>> pairs = new List<KeyValuePair<string, string>>(); pairs.Add(new KeyValuePair<string, string>("foo", "bar")); pairs.Add(new KeyValuePair<string, string>("cat", "dog")); HttpHeaders headers = new HttpHeaders(pairs); headers.RenameKey("cat", "kitty"); Assert.That(headers.AsEnumerable().First().Key, Is.EqualTo("foo")); Assert.That(headers.AsEnumerable().ElementAt(1).Key, Is.EqualTo("kitty")); Assert.That(headers["cat"], Is.Null); }
public void UpsertTest() { List<KeyValuePair<string, string>> pairs = new List<KeyValuePair<string, string>>(); pairs.Add(new KeyValuePair<string, string>("one", "1")); pairs.Add(new KeyValuePair<string, string>("two", "2")); pairs.Add(new KeyValuePair<string, string>("three", "3")); pairs.Add(new KeyValuePair<string, string>("two", "2")); HttpHeaders headers = new HttpHeaders(pairs); Assert.That(headers.Count, Is.EqualTo(4)); headers.UpsertKeyValue("two", "4"); Assert.That(headers.Count, Is.EqualTo(3), "The duplicate key matching the upsert key should have been removed"); Assert.That(headers.AsEnumerable().ElementAt(0).Key, Is.EqualTo("one")); Assert.That(headers.AsEnumerable().ElementAt(1).Key, Is.EqualTo("two")); Assert.That(headers.AsEnumerable().ElementAt(2).Key, Is.EqualTo("three")); Assert.That(headers["two"], Is.EqualTo("4")); }