예제 #1
0
        public void GetLayoutReplacement_GivenElementWithoutNewLayoutId_ReturnsNullForLayoutId()
        {
            var replacement = SitecoreFeatureToggles.GetLayoutReplacement(new Guid("{BC8A19E9-C908-4228-B860-0D895C3885B3}"),
                                                                          Guid.NewGuid(), "current");

            Assert.IsNotNull(replacement);
            Assert.IsNull(replacement.NewLayoutId);
        }
        public void GetsSublayoutsCorrectly_IgnoringDisabledFeaturesAndOnesForOtherLanguages()
        {
            var sublayouts = SitecoreFeatureToggles.GetAllRenderingReplacements("current").ToArray();

            Assert.AreEqual(3, sublayouts.Length);
            Assert.IsTrue(sublayouts[0].Enabled);
            Assert.AreEqual(new Guid("{AD909EB2-A8E8-484C-BA23-E0CC137142A1}"), sublayouts[0].Original);
            Assert.AreEqual(new Guid("{E8A4B6F9-E787-45A1-AB8A-3883405C4436}"), sublayouts[0].New);
            Assert.AreEqual(new Guid("{E1D37C73-44D6-4F62-B8AD-FE16CBC6C0E9}"), sublayouts[1].Original);
            Assert.AreEqual(new Guid("{95197DC8-C3E9-4BF0-AAEF-327DCECF4436}"), sublayouts[1].New);
            Assert.AreEqual(new Guid("{390A83A2-06FA-42BD-80AA-988C545439C8}"), sublayouts[2].Original);
            Assert.AreEqual(new Guid("{79B92D87-D3A1-41D9-8A6B-2E4FF38A3827}"), sublayouts[2].New);
        }
예제 #3
0
        public void GetLayoutReplacement_GivenExistingElement_ReturnsCorrectLayoutReplacement()
        {
            var replacement = SitecoreFeatureToggles.GetLayoutReplacement(new Guid("{9E316C3C-9494-4C99-8AF6-653560D20F76}"),
                                                                          Guid.NewGuid(), "current");

            Assert.IsNotNull(replacement);
            Assert.AreEqual(new Guid("{0C993911-CCAB-4303-8D6F-9811E0BB0847}"), replacement.NewLayoutId);
            var sublayouts = replacement.Sublayouts.ToArray();

            Assert.AreEqual(3, replacement.Sublayouts.Count);
            Assert.AreEqual("topnav", sublayouts[0].Placeholder);
            Assert.AreEqual(string.Empty, sublayouts[1].Placeholder);
            Assert.AreEqual(new Guid("{BBDBC750-D502-4B1B-A5B4-77A4AB947DE8}"), sublayouts[0].SublayoutId);
            Assert.AreEqual(new Guid("{039BF107-3806-464E-B137-CF46A139D1F8}"), sublayouts[1].SublayoutId);
        }
예제 #4
0
        public void ShouldReplaceLayout_GivenItemId_InDisabledFeature_ReturnsFalse()
        {
            var replace = SitecoreFeatureToggles.ShouldReplaceLayout(new Guid("{70BF5667-5ECA-440C-BFCE-B6ED24B7EE15}"), Guid.NewGuid(), "current");

            Assert.IsFalse(replace);
        }
예제 #5
0
        public void ShouldReplaceLayout_GivenTemplateId_InDisabledFeature_ReturnsFalse()
        {
            var replace = SitecoreFeatureToggles.ShouldReplaceLayout(Guid.NewGuid(), new Guid("{30B677BC-C59D-460A-91E6-C9F9298EBC5A}"), "current");

            Assert.IsFalse(replace);
        }
예제 #6
0
        public void ShouldReplaceLayout_GivenFeatureWithMultipleLayoutsToReplace_ReturnsTrue()
        {
            var replace = SitecoreFeatureToggles.ShouldReplaceLayout(new Guid("{EBAEDE0D-592A-48B3-B4BF-3E40E93B05E5}"), Guid.NewGuid(), "current");

            Assert.IsTrue(replace);
        }
예제 #7
0
        public void ShouldReplaceLayout_CorrectlyIdentifiesWhetherToReplaceLayout(string itemId, string templateId, string currentLanguage, bool expected)
        {
            var replace = SitecoreFeatureToggles.ShouldReplaceLayout(new Guid(itemId), new Guid(templateId), currentLanguage);

            Assert.AreEqual(expected, replace);
        }
예제 #8
0
 public void GetLayoutReplacement_GivenNonExistingElement_ThrowsException()
 {
     Assert.Throws <ArgumentException>(() => SitecoreFeatureToggles.GetLayoutReplacement(Guid.NewGuid(), Guid.NewGuid(), "current"));
 }