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