public void ReturnNullIfSerializingNull()
        {
            Serializer <DateTimeOffset?> serializer = new SqlNullableDatetimeoffsetSerializer();

            byte[] actualSerializedValue = serializer.Serialize(null);

            Assert.Null(actualSerializedValue);
        }
        public void SerializeTheSameAsSqlServer(DateTimeOffset?plaintext, byte scale)
        {
            Serializer <DateTimeOffset?> serializer = new SqlNullableDatetimeoffsetSerializer(scale);

            byte[] serializedPlaintext = serializer.Serialize(plaintext);
            byte[] expectedCiphertext  = deterministicEncryptionAlgorithm.Encrypt(serializedPlaintext);

            Database.Insert(new SqlParameter("@parameter", SqlDbType.DateTimeOffset)
            {
                Value = plaintext, Scale = scale
            });
            byte[] actualCiphertext = Database.SelectCiphertext(SqlDbType.DateTimeOffset);

            Assert.Equal(expectedCiphertext, actualCiphertext);
        }