public void CanConvert() { // Arrange var converter = new MicrosecondEpochJsonConverter(); // Act var result = converter.CanConvert(typeof(DateTime)); // Assert Assert.True(result); }
public void Write(DateTime value, string expectedResult) { // Arrange var options = new JsonSerializerOptions(); using var stream = new MemoryStream(); using var writer = new Utf8JsonWriter(stream); var converter = new MicrosecondEpochJsonConverter(); writer.WriteStartObject(); writer.WritePropertyName("test"); // Act converter.Write(writer, value, options); // Assert writer.WriteEndObject(); writer.Flush(); var result = Encoding.UTF8.GetString(stream.ToArray()); Assert.Equal(expectedResult, result); }
public void Read(JsonTokenType type, object value, DateTimeOffset expectedResult) { // Arrange var options = new JsonSerializerOptions(); var jsonUtf8Bytes = System.Text.Json.JsonSerializer.SerializeToUtf8Bytes(value, options); var reader = new Utf8JsonReader(jsonUtf8Bytes); var converter = new MicrosecondEpochJsonConverter(); while (reader.Read()) { if (reader.TokenType == type) { break; } } // Act var result = converter.Read(ref reader, typeof(bool), options); // Assert Assert.Equal(expectedResult, result); }