public void SingleResultValueConverter_CanSerializeSingleResultOfT() { // Arrange & Act & Assert IEnumerable <Customer> customers = new Customer[] { new Customer { Id = 1, Name = "abc" }, new Customer { Id = 2, Name = "efg" } }; SingleResult <Customer> result = new SingleResult <Customer>(customers.AsQueryable()); JsonSerializerOptions options = new JsonSerializerOptions(); SingleResultValueConverter converterFactory = new SingleResultValueConverter(); Type type = typeof(SingleResult <Customer>); SingleResultConverter <Customer> typeConverter = converterFactory.CreateConverter(type, options) as SingleResultConverter <Customer>; // Act string json = SerializeUtils.SerializeAsJson(jsonWriter => typeConverter.Write(jsonWriter, result, options)); // Assert Assert.Equal("{\"Id\":1,\"Name\":\"abc\"}", json); }
public void CreateConverter_WorksForSingleResultValueConverter() { // Arrange JsonSerializerOptions options = new JsonSerializerOptions(); SingleResultValueConverter converter = new SingleResultValueConverter(); // Act & Assert Type type = typeof(SingleResult <object>); JsonConverter typeConverter = converter.CreateConverter(type, options); Assert.Equal(typeof(SingleResultConverter <object>), typeConverter.GetType()); // Act & Assert type = typeof(IEnumerable <object>); typeConverter = converter.CreateConverter(type, options); Assert.Null(typeConverter); }