コード例 #1
0
        public void ReturnNullIfDeserializingNull()
        {
            Serializer <DateTime?> serializer = new SqlNullableDatetimeSerializer();
            DateTime?actualDeserializedValue  = serializer.Deserialize(null);

            Assert.Null(actualDeserializedValue);
        }
コード例 #2
0
        public void DeserializeTheSameAsSqlServer(DateTime?plaintext)
        {
            Database.Insert(new SqlParameter("@parameter", SqlDbType.DateTime)
            {
                Value = plaintext
            });
            byte[] ciphertextBytes            = Database.SelectCiphertext(SqlDbType.DateTime);
            byte[] plaintextBytes             = deterministicEncryptionAlgorithm.Decrypt(ciphertextBytes);
            Serializer <DateTime?> serializer = new SqlNullableDatetimeSerializer();
            DateTime?expectedPlaintext        = serializer.Deserialize(plaintextBytes);
            DateTime?actualPlaintext          = (DateTime?)Database.SelectPlaintext(SqlDbType.DateTime);

            Assert.Equal(expectedPlaintext, actualPlaintext);
        }
コード例 #3
0
        public void ShouldThrowIfDeserializingLessThanEightBytes(byte[] data)
        {
            Serializer <DateTime?> serializer = new SqlNullableDatetimeSerializer();

            Assert.Throws <ArgumentOutOfRangeException>(() => serializer.Deserialize(data));
        }