A read-only implementation of T:Stumps.IHttpHeaders that can be used to protect HTTP requests from being altered.
상속: HttpHeaders
예제 #1
0
        public void IndexerGet_WithInvalidHeaderName_ReturnsNull()
        {
            var headers = new ReadOnlyHttpHeaders();

            headers.AddOrUpdateInternal("abc", "123");
            Assert.IsNull(headers["NoHeader"]);
        }
예제 #2
0
        public void IndexerGet_WithValidHeaderNameDifferentCase_ReturnsValue()
        {
            var headers = new ReadOnlyHttpHeaders();

            headers.AddOrUpdateInternal("abc", "123");
            Assert.AreEqual("123", headers["ABC"]);
        }
예제 #3
0
        public void AddOrUpdateInternal_WithNullHeaderValue_DoesNothing()
        {
            var headers = new ReadOnlyHttpHeaders();

            Assert.DoesNotThrow(() => headers.AddOrUpdateInternal("abc", null));
            Assert.AreEqual(0, headers.Count);
        }
예제 #4
0
        public void AddOrUpdateInternal_WithValidValues_UpdatesCollection()
        {
            var headers = new ReadOnlyHttpHeaders();

            headers.AddOrUpdateInternal("abc", "123");
            Assert.AreEqual(1, headers.Count);
        }
예제 #5
0
 public void ClearInternal_WithPopulatedList_RemoveAllItems()
 {
     var headers = new ReadOnlyHttpHeaders();
     headers.AddOrUpdateInternal("abc", "123");
     headers.ClearInternal();
     Assert.AreEqual(0, headers.Count);
 }
예제 #6
0
        public void RemoveInternal_WithValidName_ReturnsTrue()
        {
            var headers = new ReadOnlyHttpHeaders();

            headers.AddOrUpdateInternal("abc", "123");
            Assert.IsTrue(headers.RemoveInternal("abc"));
        }
예제 #7
0
        public void ClearInternal_WithPopulatedList_RemoveAllItems()
        {
            var headers = new ReadOnlyHttpHeaders();

            headers.AddOrUpdateInternal("abc", "123");
            headers.ClearInternal();
            Assert.AreEqual(0, headers.Count);
        }
예제 #8
0
        public void RemoveInternal_WithValidName_RemoveFromList()
        {
            var headers = new ReadOnlyHttpHeaders();

            headers.AddOrUpdateInternal("abc", "123");
            headers.RemoveInternal("abc");
            Assert.AreEqual(0, headers.Count);
        }
예제 #9
0
 public void IndexerSet_WithValue_ThrowsException()
 {
     var headers = new ReadOnlyHttpHeaders();
     Assert.That(() => headers["abc"] = "123", Throws.Exception.TypeOf<NotSupportedException>());
 }
예제 #10
0
 public void IndexerGet_WithValidHeaderName_ReturnsValue()
 {
     var headers = new ReadOnlyHttpHeaders();
     headers.AddOrUpdateInternal("abc", "123");
     Assert.AreEqual("123", headers["abc"]);
 }
예제 #11
0
 public void IndexerGet_WithInvalidHeaderName_ReturnsNull()
 {
     var headers = new ReadOnlyHttpHeaders();
     headers.AddOrUpdateInternal("abc", "123");
     Assert.IsNull(headers["NoHeader"]);
 }
예제 #12
0
 public void Constructor_WithDefaults_HasNoHeaders()
 {
     var headers = new ReadOnlyHttpHeaders();
     Assert.AreEqual(0, headers.Count);
 }
예제 #13
0
        public void IndexerSet_WithValue_ThrowsException()
        {
            var headers = new ReadOnlyHttpHeaders();

            Assert.That(() => headers["abc"] = "123", Throws.Exception.TypeOf <NotSupportedException>());
        }
예제 #14
0
 public void AddOrUpdateInternal_WithValidValues_UpdatesCollection()
 {
     var headers = new ReadOnlyHttpHeaders();
     headers.AddOrUpdateInternal("abc", "123");
     Assert.AreEqual(1, headers.Count);
 }
예제 #15
0
 public void AddOrUpdateInternal_WithNullHeaderValue_DoesNothing()
 {
     var headers = new ReadOnlyHttpHeaders();
     Assert.DoesNotThrow(() => headers.AddOrUpdateInternal("abc", null));
     Assert.AreEqual(0, headers.Count);
 }
예제 #16
0
 public void IsReadOnly_WithGet_ReturnsTrue()
 {
     var headers = new ReadOnlyHttpHeaders();
     Assert.IsTrue(headers.IsReadOnly);
 }
예제 #17
0
        public void Constructor_WithDefaults_HasNoHeaders()
        {
            var headers = new ReadOnlyHttpHeaders();

            Assert.AreEqual(0, headers.Count);
        }
예제 #18
0
        public void IsReadOnly_WithGet_ReturnsTrue()
        {
            var headers = new ReadOnlyHttpHeaders();

            Assert.IsTrue(headers.IsReadOnly);
        }
예제 #19
0
 public void RemoveInternal_WithValidName_RemoveFromList()
 {
     var headers = new ReadOnlyHttpHeaders();
     headers.AddOrUpdateInternal("abc", "123");
     headers.RemoveInternal("abc");
     Assert.AreEqual(0, headers.Count);
 }
예제 #20
0
 public void RemoveInternal_WithValidName_ReturnsTrue()
 {
     var headers = new ReadOnlyHttpHeaders();
     headers.AddOrUpdateInternal("abc", "123");
     Assert.IsTrue(headers.RemoveInternal("abc"));
 }