public void Parse_OnlyIncludeTag_SingleIncludeFragmentReturned() { var fragment = Parse(@"<esi:include src=""http://host/fragment""/>"); var expected = EsiIncludeFragmentFactory.Create("http://host/fragment"); fragment.ShouldDeepEqual(expected); }
public void Parse_IncludeWithEncodedCharacters_CharactersDecoded() { var fragment = Parse(@"<esi:include src=""http://host/fragment/fragment?a=1&b=2""/>"); var expected = EsiIncludeFragmentFactory.Create("http://host/fragment/fragment?a=1&b=2"); fragment.ShouldDeepEqual(expected); }
public void Parse_IncludeTagWithAltUrl_TryFragmentReturned() { var fragment = Parse( @"<esi:include src=""http://host/fragment"" alt=""http://alt/fragment""/>"); var expected = new EsiTryFragment( EsiIncludeFragmentFactory.Create("http://host/fragment"), EsiIncludeFragmentFactory.Create("http://alt/fragment")); fragment.ShouldDeepEqual(expected); }
public void Parse_IncludeTagWithOnErrorContinue_TryFragmentReturned() { var fragment = Parse( @"<esi:include src=""http://host/fragment"" onerror=""continue""/>"); var expected = new EsiTryFragment( EsiIncludeFragmentFactory.Create("http://host/fragment"), new EsiIgnoreFragment()); fragment.ShouldDeepEqual(expected); }
public void Parse_IncludeTagWithSurroundingContent_CompositeFragmentReturned() { var fragment = Parse(@"Pre<esi:include src=""http://host/fragment""/>Post"); var expected = new EsiCompositeFragment(new IEsiFragment[] { new EsiTextFragment("Pre"), EsiIncludeFragmentFactory.Create("http://host/fragment"), new EsiTextFragment("Post") }); fragment.ShouldDeepEqual(expected); }