//todo: make test more clear and informative public void Serialization_RatingTypeAsKey() { var serializer = new NewtonsoftSerializer(); var serialized = serializer.Serialize(new Dictionary <RatingType, string> { { RatingType.All, "now" } }); serializer.Deserialize <Dictionary <RatingType, string> >(serialized); }
public static T As <T>(this IHttpRequest request) { IHttpReadOnlyHeaderCollection headers = request.Headers; if (headers.Contains("content-type")) { var contentType = headers.GetFirstOrNull("content-type"); if (string.Equals("application/x-www-form-urlencoded", contentType, System.StringComparison.OrdinalIgnoreCase)) { return(HydrateFromFormUrlEncoded <T>(request.RequestBody.AsFormUrlEncoded())); } if (string.Equals("application/json", contentType, System.StringComparison.OrdinalIgnoreCase)) { return(serializer.Deserialize <T>(request.RequestBody.AsText())); } } return(request.RequestBody.AsBinary <T>()); }
public void Newtonsoft_Should_not_serialize_attachments() { //arrange var serializer = new NewtonsoftSerializer(); var message = new AttachmentCommand { Message = "Hello", Attachment = new MessageAttachment("filename.txt", "text/plain", new MemoryStream()) }; //act var serialized = serializer.Serialize(message); var deserialized = serializer.Deserialize <AttachmentCommand>(serialized.AsSpan()); //assert deserialized.Attachment.Should().BeNull(); deserialized.Message.Should().Be("Hello"); }
public void Newtonsoft_Should_serialize_deserialize_message() { //arrange var serializer = new NewtonsoftSerializer(); var original = new TestSerializationCommand { Age = 1, Height = 5.7f, Name = "Aurora" }; var serialized = serializer.Serialize(original); //act var deserialized = serializer.Deserialize <TestSerializationCommand>(serialized.AsSpan()); //assert deserialized.Age.Should().Be(original.Age); deserialized.Name.Should().Be(original.Name); deserialized.Height.Should().Be(original.Height); }