public void SutUsesDefaultNameIfCurrentProviderSet(SwitchingLinkProvider sut, [Substitute] LinkProvider current)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.Name.Should().BeNull();
   }
 }
 public void GetDefaultUrlOptionsCallsCurrentProvider(SwitchingLinkProvider sut, [Substitute] LinkProvider current)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.GetDefaultUrlOptions().Should().BeSameAs(current.GetDefaultUrlOptions());
   }
 }
 public void SutCallsBaseProviderPropertiesIfCurrentNorSet(SwitchingLinkProvider sut)
 {
   sut.Name.Should().BeNull();
   sut.AddAspxExtension.Should().BeFalse();
   sut.AlwaysIncludeServerUrl.Should().BeFalse();
   sut.Description.Should().BeNull();
   sut.EncodeNames.Should().BeFalse();
   sut.LanguageEmbedding.Should().Be(LanguageEmbedding.AsNeeded);
   sut.LanguageLocation.Should().Be(LanguageLocation.FilePath);
   sut.LowercaseUrls.Should().BeFalse();
   sut.ShortenUrls.Should().BeFalse();
   sut.UseDisplayName.Should().BeFalse();
 }
 public void SutCallsCurrentProviderProperties(SwitchingLinkProvider sut, [Substitute]LinkProvider current)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.AddAspxExtension.Should().Be(current.AddAspxExtension);
     sut.AlwaysIncludeServerUrl.Should().Be(current.AlwaysIncludeServerUrl);
     sut.Description.Should().Be(current.Description);
     sut.EncodeNames.Should().Be(current.EncodeNames);
     sut.LanguageEmbedding.Should().Be(current.LanguageEmbedding);
     sut.LanguageLocation.Should().Be(current.LanguageLocation);
     sut.LowercaseUrls.Should().Be(current.LowercaseUrls);
     sut.ShortenUrls.Should().Be(current.ShortenUrls);
     sut.UseDisplayName.Should().Be(current.UseDisplayName);
   }
 }
 public void SutGetCurrentProvider(SwitchingLinkProvider sut, Switcher<LinkProvider> switcher)
 {
   sut.CurrentProvider.Should().BeSameAs(Switcher<LinkProvider>.CurrentValue);
 }
 public void ExpandDynamicLinksCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut, HttpRequest request, string text, bool resolveSites)
 {
   sut.ExpandDynamicLinks(text, resolveSites);
 }
 public void SutIsLinkProvider(SwitchingLinkProvider sut)
 {
   sut.Should().BeAssignableTo<LinkProvider>();
 }
 public void InitializeCallsBaseProviderIfCurrentSet(SwitchingLinkProvider sut, [Substitute] LinkProvider current, string name, NameValueCollection config)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.Initialize(name, config);
     current.DidNotReceiveWithAnyArgs().Initialize(name, config);
   }
 }
 public void GetDynamicUrlCallsCurrentProvider(SwitchingLinkProvider sut, [Substitute] LinkProvider current, Item item, LinkUrlOptions options)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.GetDynamicUrl(item, options).Should().BeSameAs(current.GetDynamicUrl(item, options));
   }
 }
 public void ParseRequestUrlCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut, HttpRequest request)
 {
   sut.ParseRequestUrl(request).Should().NotBeNull();
 }
 public void ParseRequestUrlCallsCurrentProvider(SwitchingLinkProvider sut, [Substitute] LinkProvider current, HttpRequest request)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.ParseRequestUrl(request).Should().Be(current.ParseRequestUrl(request));
   }
 }
 public void ParseDynamicLinkCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut, ID id)
 {
   var linkText = "~/link.aspx?_id=" + id;
   sut.ParseDynamicLink(linkText).Should().NotBeNull();
 }
 public void ParseDynamicLinkCallsCurrentProvider(SwitchingLinkProvider sut, [Substitute] LinkProvider current, ID id)
 {
   using (new Switcher<LinkProvider>(current))
   {
     var linkText = "~/link.aspx?_id=" + id;
     sut.ParseDynamicLink(linkText).Should().Be(current.ParseDynamicLink(linkText));
   }
 }
 public void IsDynamicLinkCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut, string linkText)
 {
   sut.IsDynamicLink(linkText).Should().BeFalse();
 }
 public void IsDynamicLinkCallsCurrentProvider(SwitchingLinkProvider sut, [Substitute] LinkProvider current, string linkText)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.IsDynamicLink(linkText).Should().Be(current.IsDynamicLink(linkText));
   }
 }
 public void InitializeCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut, string name, NameValueCollection config)
 {
   sut.Initialize(name, config);
 }
 public void ResolveTargetSiteCallsCurrentProvider(SwitchingLinkProvider sut, [Substitute] LinkProvider current, Item item)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.ResolveTargetSite(item).Should().Be(current.ResolveTargetSite(item));
   }
 }
 public void ResolveTargetSiteCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut, HttpRequest request, Item item)
 {
   sut.ResolveTargetSite(item);
 }
 public void GetDefaultUrlOptionsCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut)
 {
   sut.GetDefaultUrlOptions().Should().NotBeNull();
 }
 public void ExpandDynamicLinksCallsCurrentProvider(SwitchingLinkProvider sut, [Substitute] LinkProvider current, string text, bool resolveSite)
 {
   using (new Switcher<LinkProvider>(current))
   {
     sut.ExpandDynamicLinks(text, resolveSite).Should().Be(current.ExpandDynamicLinks(text, resolveSite));
   }
 }
 public void GetDynamicUrlCallsCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut, Item item, LinkUrlOptions options)
 {
   sut.GetDynamicUrl(item, options).Should().NotBeEmpty();
 }
 public void GetItemUrlOptionsCallsBaseProviderIfCurrentNotSet(SwitchingLinkProvider sut, Item item, UrlOptions options)
 {
   using (new Db())
   {
     sut.GetItemUrl(item, options).Should().NotBeNull();
   }
 }