public void EnsureObjectCanBeSerialized_DoesNotThrow_OnValidType(object value) { // Arrange var testProvider = new BsonTempDataSerializer(); // Act & Assert (Does not throw) testProvider.EnsureObjectCanBeSerialized(value); }
public void DeserializeTempData_ReturnsEmptyDictionary_DataIsEmpty() { // Arrange var serializer = new BsonTempDataSerializer(); // Act var tempDataDictionary = serializer.Deserialize(new byte[0]); // Assert Assert.NotNull(tempDataDictionary); Assert.Empty(tempDataDictionary); }
public void EnsureObjectCanBeSerialized_ThrowsException_OnInvalidDictionaryType(object value, Type type) { // Arrange var testProvider = new BsonTempDataSerializer(); // Act & Assert var exception = Assert.Throws <InvalidOperationException>(() => { testProvider.EnsureObjectCanBeSerialized(value); }); Assert.Equal($"The '{typeof(BsonTempDataSerializer).FullName}' cannot serialize a dictionary " + $"with a key of type '{type}'. The key must be of type 'System.String'.", exception.Message); }
public void EnsureObjectCanBeSerialized_ThrowsException_OnInvalidType(object value, Type type) { // Arrange var testProvider = new BsonTempDataSerializer(); // Act & Assert var exception = Assert.Throws <InvalidOperationException>(() => { testProvider.EnsureObjectCanBeSerialized(value); }); Assert.Equal($"The '{typeof(BsonTempDataSerializer).FullName}' cannot serialize " + $"an object of type '{type}'.", exception.Message); }
public void SerializeAndDeserialize_NullValue_RoundTripsSuccessfully() { // Arrange var key = "NullKey"; var testProvider = new BsonTempDataSerializer(); var input = new Dictionary <string, object> { { key, null } }; // Act var bytes = testProvider.Serialize(input); var values = testProvider.Deserialize(bytes); // Assert Assert.True(values.ContainsKey(key)); Assert.Null(values[key]); }