コード例 #1
0
        public void ShouldAutoDeserializeIncludingBaseTemplates()
        {
            DsDbItem item = new DsDbItem("/sitecore/content/Home/Some item");

            using (Db db = new Db()
            {
                item
            })
            {
                ID templateId     = ID.Parse("{F6A72DBF-558F-40E5-8033-EE4ACF027FE2}");
                ID baseTemplateId = ID.Parse("{C4F448EB-7CA3-4A27-BA5E-99E8B9022803}");

                item.Should().NotBeNull();
                item.TemplateID.ShouldBeEquivalentTo(templateId);

                Item templateItem = db.GetItem(item.TemplateID);

                templateItem.Should().NotBeNull();
                templateItem.Name.ShouldBeEquivalentTo("Some template");
                templateItem[FieldIDs.BaseTemplate].ShouldBeEquivalentTo(baseTemplateId.ToString());

                Item baseTemplateItem = db.GetItem(baseTemplateId);

                baseTemplateItem.Should().NotBeNull();
                baseTemplateItem.Name.ShouldBeEquivalentTo("Some base template");
                baseTemplateItem.ID.ShouldBeEquivalentTo(baseTemplateId);
            }
        }
コード例 #2
0
        public void ShouldDeserializeMultilingualItem()
        {
            DsDbItem item = new DsDbItem("/sitecore/content/home");

            using (new Db()
            {
                item
            })
            {
                item.Should().NotBeNull();

                ID titleFieldId  = ID.Parse("{75577384-3C97-45DA-A847-81B00500E250}");
                ID sharedFieldId = ID.Parse("{8F0BDC2B-1A78-4C29-BF83-C1C318186AA6}");

                item.Fields[titleFieldId].Value.Should().BeEquivalentTo("Sitecore");
                item.Fields[sharedFieldId].Value.Should()
                .BeEquivalentTo("This value should be the same in all languages");

                using (new LanguageSwitcher("de-DE"))
                {
                    item.Fields[titleFieldId].Value.Should().BeEquivalentTo("Sitekern");
                    item.Fields[sharedFieldId].Value.Should()
                    .BeEquivalentTo("This value should be the same in all languages");
                }
            }
        }
コード例 #3
0
    public void ShouldSetItemId()
    {
      var item = new DsDbItem("/sitecore/content/home");

      item.Should().NotBeNull();
      item.ID.ShouldBeEquivalentTo(SerializationId.ContentHomeItem);
    }
コード例 #4
0
        public void ShouldSetName()
        {
            DsDbItem item = new DsDbItem("/sitecore/content/home");

            item.Should().NotBeNull();
            item.Name.Should().BeEquivalentTo("Home");
        }
コード例 #5
0
    public void ShouldSetName()
    {
      var item = new DsDbItem("/sitecore/content/home");

      item.Should().NotBeNull();
      item.Name.Should().BeEquivalentTo("Home");
    }
コード例 #6
0
    public void ShouldSetTemplateId()
    {
      var item = new DsDbItem("/sitecore/content/home");

      item.Should().NotBeNull();
      item.TemplateID.ShouldBeEquivalentTo(SerializationId.SampleItemTemplate);
    }
コード例 #7
0
        public void ShouldSetTemplateId()
        {
            var item = new DsDbItem("/sitecore/content/home");

            item.Should().NotBeNull();
            item.TemplateID.ShouldBeEquivalentTo(SerializationId.SampleItemTemplate);
        }
コード例 #8
0
        public void ShouldSetItemId()
        {
            var item = new DsDbItem("/sitecore/content/home");

            item.Should().NotBeNull();
            item.ID.ShouldBeEquivalentTo(SerializationId.ContentHomeItem);
        }
コード例 #9
0
        public void ShouldSetItemId()
        {
            DsDbItem item = new DsDbItem("/sitecore/content/home");

            item.Should().NotBeNull();
            item.ID.ShouldBeEquivalentTo(ID.Parse("{110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9}"));
        }
コード例 #10
0
        public void ShouldSetTemplateId()
        {
            DsDbItem item = new DsDbItem("/sitecore/content/home");

            item.Should().NotBeNull();
            item.TemplateID.ShouldBeEquivalentTo(ID.Parse("{76036F5E-CBCE-46D1-AF0A-4143F9B557AA}"));
        }
コード例 #11
0
        public void ShouldLoadFromSpecifiedFolder()
        {
            DsDbItem item = new DsDbItem(
                "/sitecore/content/Item only available in custom serialization folder",
                "custom");

            item.Should().NotBeNull();
        }
コード例 #12
0
        public void ShouldLookupByIdInShortenedPath()
        {
            ID id = ID.Parse("{9897418C-9D6A-4AC9-B08A-15064C9582A9}");

            DsDbItem item = new DsDbItem(id);

            item.Should().NotBeNull();
            item.Name.Should().BeEquivalentTo("still deeper");
            item.ID.ShouldBeEquivalentTo(id);
        }
コード例 #13
0
        public void ShouldLookupById()
        {
            ID id = ID.Parse("{110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9}");

            DsDbItem item = new DsDbItem(id);

            item.Should().NotBeNull();
            item.Name.Should().BeEquivalentTo("Home");
            item.ID.ShouldBeEquivalentTo(id);
        }
コード例 #14
0
        public void ShouldDetermineFolderFromContextDatabase()
        {
            using (new DatabaseSwitcher(Database.GetDatabase("core")))
            {
                DsDbItem item = new DsDbItem("/sitecore/content/Applications");

                item.Should().NotBeNull();
                item.Name.ShouldBeEquivalentTo("Applications");
            }
        }
コード例 #15
0
        public void ShouldLookupById()
        {
            var id = SerializationId.ContentHomeItem;

            var item = new DsDbItem(id);

            item.Should().NotBeNull();
            item.Name.Should().BeEquivalentTo("Home");
            item.ID.ShouldBeEquivalentTo(id);
        }
コード例 #16
0
        public void ShouldNotAutoDeserializeLinkedTemplate()
        {
            var item = new DsDbItem("/sitecore/content/home", false, false);

            using (var db = new Db {
                item
            })
            {
                item.Should().NotBeNull();

                var templateItem = db.GetItem(item.TemplateID);
                templateItem.Name.Should().NotBe("Sample Item");
            }
        }
コード例 #17
0
    public void ShouldDeserializeDescendants()
    {
      var item = new DsDbItem("/sitecore/content/home", true);
      using (new Db { item })
      {
        item.Should().NotBeNull();

        var child = item.Children.FirstOrDefault(c => c.Name == "Child Item");
        child.Should().NotBeNull();
        child.Name.Should().BeEquivalentTo("Child Item");

        var grandChild = child.Children.FirstOrDefault(c => c.Name == "Grandchild Item");
        grandChild.Should().NotBeNull();
        grandChild.Name.Should().BeEquivalentTo("Grandchild Item");
      }
    }
コード例 #18
0
        public void ShouldAutoDeserializeLinkedTemplate()
        {
            var item = new DsDbItem("/sitecore/content/home");

            using (var db = new Db {
                item
            })
            {
                var templateId = ID.Parse("{76036F5E-CBCE-46D1-AF0A-4143F9B557AA}");

                item.Should().NotBeNull();
                item.TemplateID.ShouldBeEquivalentTo(templateId);

                var templateItem = db.GetItem(item.TemplateID);

                templateItem.Should().NotBeNull();
                templateItem.Name.ShouldBeEquivalentTo("Sample Item");
            }
        }
コード例 #19
0
        public void ShouldDeserializeDescendants()
        {
            var item = new DsDbItem("/sitecore/content/home", true);

            using (new Db {
                item
            })
            {
                item.Should().NotBeNull();

                var child = item.Children.FirstOrDefault(c => c.Name == "Child Item");
                child.Should().NotBeNull();
                child.Name.Should().BeEquivalentTo("Child Item");

                var grandChild = child.Children.FirstOrDefault(c => c.Name == "Grandchild Item");
                grandChild.Should().NotBeNull();
                grandChild.Name.Should().BeEquivalentTo("Grandchild Item");
            }
        }
コード例 #20
0
        public void ShouldAutoDeserializeLinkedTemplate()
        {
            var item = new DsDbItem("/sitecore/content/home");

            using (var db = new Db {
                item
            })
            {
                var templateId = SerializationId.SampleItemTemplate;

                item.Should().NotBeNull();
                item.TemplateID.ShouldBeEquivalentTo(templateId);

                var templateItem = db.GetItem(item.TemplateID);

                templateItem.Should().NotBeNull();
                templateItem.Name.ShouldBeEquivalentTo("Sample Item");
            }
        }
コード例 #21
0
    public void ShouldDeserializeMultilingualItem()
    {
      var item = new DsDbItem("/sitecore/content/home");

      using (new Db { item })
      {
        item.Should().NotBeNull();

        var titleFieldId = ID.Parse("{75577384-3C97-45DA-A847-81B00500E250}");
        var sharedFieldId = ID.Parse("{8F0BDC2B-1A78-4C29-BF83-C1C318186AA6}");

        item.Fields[titleFieldId].Value.Should().BeEquivalentTo("Sitecore");
        item.Fields[sharedFieldId].Value.Should().BeEquivalentTo("This value should be the same in all languages");

        using (new LanguageSwitcher("de-DE"))
        {
          item.Fields[titleFieldId].Value.Should().BeEquivalentTo("Sitekern");
          item.Fields[sharedFieldId].Value.Should().BeEquivalentTo("This value should be the same in all languages");
        }
      }
    }
コード例 #22
0
    public void ShouldLoadFromSpecifiedFolder()
    {
      var item = new DsDbItem("/sitecore/content/Item only available in custom serialization folder", "custom");

      item.Should().NotBeNull();
    }
コード例 #23
0
    public void ShouldLookupByIdInShortenedPath()
    {
      var id = ID.Parse("{9897418C-9D6A-4AC9-B08A-15064C9582A9}");

      var item = new DsDbItem(id);

      item.Should().NotBeNull();
      item.Name.Should().BeEquivalentTo("still deeper");
      item.ID.ShouldBeEquivalentTo(id);
    }
コード例 #24
0
    public void ShouldDeserializeShortenedPathOneDirectoryHigher()
    {
      var item = new DsDbItem("/sitecore/content/this/path must be very deep/so that it will be shortened/on the filesystem/abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");

      item.Should().NotBeNull();
    }
コード例 #25
0
    public void ShouldAutoDeserializeIncludingBaseTemplates()
    {
      var item = new DsDbItem("/sitecore/content/Home/Some item");
      using (var db = new Db { item })
      {
        var templateId = ID.Parse("{F6A72DBF-558F-40E5-8033-EE4ACF027FE2}");
        var baseTemplateId = ID.Parse("{C4F448EB-7CA3-4A27-BA5E-99E8B9022803}");

        item.Should().NotBeNull();
        item.TemplateID.ShouldBeEquivalentTo(templateId);

        var templateItem = db.GetItem(item.TemplateID);

        templateItem.Should().NotBeNull();
        templateItem.Name.ShouldBeEquivalentTo("Some template");
        templateItem[FieldIDs.BaseTemplate].ShouldBeEquivalentTo(baseTemplateId.ToString());

        var baseTemplateItem = db.GetItem(baseTemplateId);

        baseTemplateItem.Should().NotBeNull();
        baseTemplateItem.Name.ShouldBeEquivalentTo("Some base template");
        baseTemplateItem.ID.ShouldBeEquivalentTo(baseTemplateId);
      }
    }
コード例 #26
0
    public void ShouldNotAutoDeserializeLinkedTemplate()
    {
      var item = new DsDbItem("/sitecore/content/home", false, false);
      using (var db = new Db { item })
      {
        item.Should().NotBeNull();

        var templateItem = db.GetItem(item.TemplateID);
        templateItem.Name.Should().NotBe("Sample Item");
      }
    }
コード例 #27
0
    public void ShouldAutoDeserializeLinkedTemplate()
    {
      var item = new DsDbItem("/sitecore/content/home");
      using (var db = new Db { item })
      {
        var templateId = SerializationId.SampleItemTemplate;

        item.Should().NotBeNull();
        item.TemplateID.ShouldBeEquivalentTo(templateId);

        var templateItem = db.GetItem(item.TemplateID);

        templateItem.Should().NotBeNull();
        templateItem.Name.ShouldBeEquivalentTo("Sample Item");
      }
    }
コード例 #28
0
    public void ShouldLookupById()
    {
      var id = SerializationId.ContentHomeItem;

      var item = new DsDbItem(id);

      item.Should().NotBeNull();
      item.Name.Should().BeEquivalentTo("Home");
      item.ID.ShouldBeEquivalentTo(id);
    }
コード例 #29
0
        public void ShouldDeserializeShortenedPath()
        {
            var item = new DsDbItem("/sitecore/content/this/path must be very deep/so that it will be shortened/on the filesystem/abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz/still deeper");

            item.Should().NotBeNull();
        }
コード例 #30
0
    public void ShouldDetermineFolderFromContextDatabase()
    {
      using (new DatabaseSwitcher(Database.GetDatabase("core")))
      {
        var item = new DsDbItem("/sitecore/content/Applications");

        item.Should().NotBeNull();
        item.Name.ShouldBeEquivalentTo("Applications");
      }
    }
コード例 #31
0
        public void ShouldDeserializeShortenedPathOneDirectoryHigher()
        {
            DsDbItem item = new DsDbItem("/sitecore/content/this/path must be very deep/so that it will be shortened/on the filesystem/abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");

            item.Should().NotBeNull();
        }