Ejemplo n.º 1
0
        public void ReturnJsonObject_FullControlVersion_Sets_Environment_Correctly(string input, string encodingName, string mimeType)
        {
            var encoding         = DataRowParser.Encoding(encodingName);
            var expectedEncoding = encoding ?? Encoding.UTF8;
            var expectedMimeType = String.IsNullOrEmpty(mimeType)
                ? "application/json"
                : mimeType;
            var expectedText = input == null
                ? "null"
                : $"\"{input}\"";
            var expectedBody   = expectedEncoding.GetBytes(expectedText);
            var expectedLength = expectedBody.Length.ToString(CultureInfo.InvariantCulture);

            _Responder.ReturnJsonObject(_Environment.Environment, input, null, encoding, mimeType);

            var contentType = _Environment.ResponseHeadersDictionary.ContentTypeValue;

            Assert.AreEqual(expectedMimeType, contentType.MediaType);
            Assert.AreEqual(expectedEncoding.WebName, contentType.Charset);
            Assert.AreEqual(expectedLength, _Environment.ResponseHeadersDictionary["Content-Length"]);
            Assertions.AreEqual(expectedBody, _Environment.ResponseBodyBytes);
        }