예제 #1
0
        public void Convert()
        {
            var token = new Token();

            token.ApplicationId = Guid.NewGuid();
            token.ValidationKey = StringHelper.ValidString();
            var random     = new Random();
            var rawMessage = new byte[512];

            random.NextBytes(rawMessage);

            var email = new BinaryEmail()
            {
                Token      = token,
                RawMessage = rawMessage,
                Recipient  = StringHelper.ValidString(),
                Sender     = StringHelper.ValidString(),
            };

            var data = email.Convert();

            Assert.AreEqual <Guid>(email.Token.ApplicationId, data.ApplicationId);
            Assert.AreEqual <string>(email.Sender, data.Sender);
            Assert.AreEqual <string>(email.Recipient, data.Recipient);
            Assert.AreEqual <byte[]>(email.RawMessage, data.RawMessage);
            Assert.IsTrue(email.RawMessage.ContentEquals(data.RawMessage));
        }
예제 #2
0
        public Guid Send(BinaryEmail email)
        {
            Contract.Requires <ArgumentNullException>(null != email);

            Contract.Requires <ArgumentOutOfRangeException>(!string.IsNullOrWhiteSpace(email.Sender));
            Contract.Requires <ArgumentOutOfRangeException>(!string.IsNullOrWhiteSpace(email.Recipient));

            Contract.Requires <ArgumentOutOfRangeException>(null != email.RawMessage);

            MailGun.Send(email.Sender, email.Recipient, email.RawMessage);

            var table = new AzureTable <BinaryEmailData>(ServerConfiguration.Default);
            var data  = email.Convert();

            table.AddEntity(data);

            return(data.Id);
        }
예제 #3
0
        public void ConvertNullToken()
        {
            var email = new BinaryEmail();

            email.Convert();
        }