public void GetForgotPasswordMailTemplateShouldNotThrowExceptionWhenSubjIsEmpty(Db db)
 {
     var fakeSite = BuildUpSiteContext(db, subj: null);
       using (new SiteContextSwitcher(fakeSite))
       {
     var settings = new AccountsSettingsService();
     settings.GetForgotPasswordMailTemplate().Subject.Should().BeEmpty();
       }
 }
 public void GetForgotPasswordMailTemplateShouldRetreiveSubjectFromItem(Db db)
 {
     var fakeSite = BuildUpSiteContext(db);
       using (new SiteContextSwitcher(fakeSite))
       {
     var settings = new AccountsSettingsService();
     var mailTemplate = settings.GetForgotPasswordMailTemplate();
     mailTemplate.Subject.Should().Be("restore password subject");
       }
 }
 public void GetForgotPasswordMailTemplateShouldRetreiveSourceAddressFromItem(Db db)
 {
     var fakeSite = BuildUpSiteContext(db);
       using (new SiteContextSwitcher(fakeSite))
       {
     var settings = new AccountsSettingsService();
     var mailTemplate = settings.GetForgotPasswordMailTemplate();
     mailTemplate.From.Address.Should().Be("*****@*****.**");
       }
 }
 public void GetForgotPasswordMailTemplateShouldThrowExceptionWhenFromAddressIsEmpty(Db db)
 {
     var fakeSite = BuildUpSiteContext(db, from: null);
       using (new SiteContextSwitcher(fakeSite))
       {
     var settings = new AccountsSettingsService();
     Action act = () => settings.GetForgotPasswordMailTemplate();
     act.ShouldThrow<InvalidValueException>().WithMessage("'From' field in mail template should be set");
       }
 }
 public void GetPageLinkOrDefaultShouldThrowIfDefaultIsNull(Item item, ID id, AccountsSettingsService accountSettingsService)
 {
     //var accountSettingsService = Substitute.ForPartsOf<AccountsSettingsService>();
       //accountSettingsService
       accountSettingsService.Invoking(x => x.GetPageLinkOrDefault(item, id, null)).ShouldThrow<ArgumentNullException>();
 }
 public void GetForgotPasswordMailTemplateShouldThrowExceptionWhenMailTemplateNotfound(Db db)
 {
     var fakeSite = BuildUpSiteContext(db, from: null);
       db.GetItem("/sitecore/content/siteroot").DeleteChildren();
       using (new SiteContextSwitcher(fakeSite))
       {
     var settings = new AccountsSettingsService();
     Action act = () => settings.GetForgotPasswordMailTemplate();
     act.ShouldThrow<ItemNotFoundException>();
       }
 }