public void ReturnNullIfDeserializingNull() { Serializer <decimal?> serializer = new SqlNullableSmallmoneySerializer(); decimal?actualDeserializedValue = serializer.Deserialize(null); Assert.Null(actualDeserializedValue); }
public void DeserializeTheSameAsSqlServer(decimal?plaintext) { Database.Insert(new SqlParameter("@parameter", SqlDbType.SmallMoney) { Value = plaintext }); byte[] ciphertextBytes = Database.SelectCiphertext(SqlDbType.SmallMoney); byte[] plaintextBytes = deterministicEncryptionAlgorithm.Decrypt(ciphertextBytes); Serializer <decimal?> serializer = new SqlNullableSmallmoneySerializer(); decimal?expectedPlaintext = serializer.Deserialize(plaintextBytes); decimal?actualPlaintext = (decimal?)Database.SelectPlaintext(SqlDbType.SmallMoney); Assert.Equal(expectedPlaintext, actualPlaintext); }
public void ShouldThrowIfDeserializingLessThanEightBytes(byte[] data) { Serializer <decimal?> serializer = new SqlNullableSmallmoneySerializer(); Assert.Throws <ArgumentOutOfRangeException>(() => serializer.Deserialize(data)); }