System.Net.Mail.Tests.MessageEncodeHeadersTest.EncodeHeaders_WithMultipleValuesForSameHeader_ShouldEncodeEachOneCorrectly C# (CSharp) Méthode

EncodeHeaders_WithMultipleValuesForSameHeader_ShouldEncodeEachOneCorrectly() private méthode

        public void EncodeHeaders_WithMultipleValuesForSameHeader_ShouldEncodeEachOneCorrectly()
        {
            string hvalue = "Some Ascii header";
            _headers.Add("X-Custom", hvalue);
            _headers.Add("X-Custom", CustomUnicodeHeaderValue);
            _message.EncodeHeaders(_headers, false);

            string[] output = _headers.GetValues("X-Custom");
            Assert.Equal(2, output.Length);

            foreach (string s in output)
            {
                Assert.False(ContainsNonAscii(s), s);
            }

            Assert.Equal(Encoding.UTF8, _message.HeadersEncoding);

            // Allow Unicode
            _headers.Clear();
            _headers.Add("X-Custom", hvalue);
            _headers.Add("X-Custom", CustomUnicodeHeaderValue);
            _message.EncodeHeaders(_headers, true);

            output = _headers.GetValues("X-Custom");
            Assert.Equal(2, output.Length);
            Assert.False(ContainsNonAscii(output[0]), output[0]);
            Assert.True(ContainsNonAscii(output[1]), output[1]);
        }