public void ForwardToFriend()
        {
            //Act

            //var actual = new SpecialistPublicProfileHelper(Uow, new FakeMembershipProvider());

            //var controllerContext = new Mock<ControllerContext>();
            //controllerContext.SetupGet(x => x.HttpContext.Request.Url).Returns(new Uri("http://tempuri.org"));
            //actual.ControllerContext = controllerContext.Object;

            //var email = actual.SpecialPublicProfileComposeForwardToFriendEmail("myFriendName", "myFriendEmailAddress", "myMessage", 5);

            //Assert.AreEqual(email.SenderFirstName, "A Friend");

            //// email.ProfileUrl
            ////  email.CustomTitle
            ////email.PhotoPath
            //Assert.AreEqual(email.ProfileUrl, "A Friend");
            //Assert.AreEqual(email.CustomTitle, "A Friend");
            //Assert.AreEqual(email.PhotoPath, "A Friend");
            var controllerContext = new Mock<ControllerContext>();
            controllerContext.SetupGet(x => x.HttpContext.Request.Url).Returns(new Uri("http://tempuri.org"));
            Controller.ControllerContext = controllerContext.Object;

            var email = new Postal.Email("ForwardtoFriend/Multipart");
            try
            {
                email.SendAsync();
            }
            catch (Exception e)
            {

                throw;
            }

            var actual = Controller.ForwardtoFriend("myFriendName", "myFriendEmailAddress", "myMessage", 5);
            var viewResult = actual as ViewResult;
            if (viewResult != null)
            {
                Assert.AreEqual(viewResult.ViewBag.Email, 55.50);

            }

            //   public ActionResult ForwardtoFriend(string friendname, string friendemailaddress, string message, int id)
            //{
            //    dynamic email = new Email("ForwardtoFriend/Multipart");
            //    var poster = UserHelper.GetSendtoFriendPoster() ?? UserHelper.DefaultPoster;
            //    email.To = friendemailaddress;
            //    email.FriendName = friendname;
            //    email.From = "*****@*****.**";
            //    email.SenderFirstName = poster.FirstName;
            //    email.Title = string.Format("Request From {0}", poster.FirstName);
            //    email.SubTitle = "Request from ";
            //    email.Message = message;
            //    email.InvitationNote = " invite you to see this skilled professional.";
            //    email.FooterNote = "Check out this Professional";
            //    var uri = Request.Url;
            //    if (uri != null)
            //    {
            //        var host = uri.Scheme + Uri.SchemeDelimiter + uri.Host + ":" + uri.Port;
            //        email.ProfileUrl = host + uri.AbsolutePath.Replace("ForwardtoFriend", "");
            //        var currentSpecialist = _unitOfWork.SpecialistRepository.FindBy(x => x.SpecialistId == id).FirstOrDefault();
            //        if (currentSpecialist != null)
            //        {
            //            var specialistTitle = currentSpecialist.FirstName + " , " + currentSpecialist.LastName;
            //            if (specialistTitle.Length >= 50)
            //            {
            //                specialistTitle = specialistTitle.Substring(0, 50);
            //            }
            //            email.CustomTitle = specialistTitle;
            //        }
            //        if (currentSpecialist != null)
            //        {
            //            email.PhotoPath = host + "/" + GetSpecialistPrimaryWorkPhoto(id).Replace("../../", "");

            //        }
            //    }
            //    try
            //    {
            //        email.SendAsync();

            //    }
            //    catch (Exception)
            //    {
            //        return RedirectToAction("Index", new { id, sharespecialist = false });
            //    }
            //    return RedirectToAction("Index", new { id, sharespecialist = true });

            //}

            //Act
            //string friendname, string friendemailaddress, string message, int id
            //string friendname = "Joe";
            //string friendemailaddress = "*****@*****.**";
            //string message = "message from Joe";
            //int id = 2;
            //var actual = Controller.ForwardtoFriend();

            //var DefaultPoster = new PosterAttributes(tenant.FirstName, tenant.LastName,
            //                                    currenturl + "/tenantprofile/index/" + tenant.TenantId, tenant.Photo,
            //                                    tenant.EmailAddress, "tenant", tenant.TenantId);
            Assert.Inconclusive("Not Implemented Yet");
        }
        public void SendRequestToRequester(string requestername, string requesteremailaddress,string datepicker, int id)
        {
            dynamic email = new Postal.Email("RequestShowing/Sender/Multipart");
            var currentunit = UnitofWork.UnitRepository.FirstOrDefault(x=>x.UnitId == id);
            const string previewPathWithHost = @"/Unit/Preview";
            var unitPicture = currentunit.PrimaryPhoto;
            unitPicture = unitPicture.Replace("../../", "");

            email.To = requesteremailaddress;
            email.RequesterName = requestername;
            email.From = "*****@*****.**";

            email.Title = string.Format("Confirmation of Request From {0}", requestername);

            email.ScheduleDate = datepicker;
            email.LinkConfirmation = "Confirmation to Poster Schedule Pending";
            UnitProperty(id, previewPathWithHost, email, currentunit, unitPicture);

            try
            {
                email.SendAsync();

            }
            catch (Exception)
            {
                //Write To Database Error
                //Output Message
                Response.Write("Fail");
                throw;
            }
        }