Esempio n. 1
0
        public void AddWorksLikeSetAndThrowsIfKeyExists()
        {
            IDictionary <string, StringValues> headers = new FrameRequestHeaders();

            StringValues value;

            Assert.False(headers.TryGetValue("host", out value));
            Assert.False(headers.TryGetValue("custom", out value));
            Assert.False(headers.TryGetValue("Content-Length", out value));

            headers.Add("host", new[] { "localhost" });
            headers.Add("custom", new[] { "value" });
            headers.Add("Content-Length", new[] { "0" });
            Assert.True(headers.TryGetValue("host", out value));
            Assert.True(headers.TryGetValue("custom", out value));
            Assert.True(headers.TryGetValue("Content-Length", out value));

            Assert.Throws <ArgumentException>(() => headers.Add("host", new[] { "localhost" }));
            Assert.Throws <ArgumentException>(() => headers.Add("custom", new[] { "value" }));
            Assert.Throws <ArgumentException>(() => headers.Add("Content-Length", new[] { "0" }));
            Assert.True(headers.TryGetValue("host", out value));
            Assert.True(headers.TryGetValue("custom", out value));
            Assert.True(headers.TryGetValue("Content-Length", out value));
        }