Пример #1
0
        public void Can_Serialize_Without_Error()
        {
            var ss = new SerializationService(new JsonNetSerializer());

            var item = new DocumentEntitySlim()
            {
                Id = 3,
                ContentTypeAlias = "test1",
                CreatorId        = 4,
                Key                  = Guid.NewGuid(),
                UpdateDate           = DateTime.Now,
                CreateDate           = DateTime.Now,
                Name                 = "Test",
                ParentId             = 5,
                SortOrder            = 6,
                Path                 = "-1,23",
                Level                = 7,
                ContentTypeIcon      = "icon",
                ContentTypeThumbnail = "thumb",
                HasChildren          = true,
                Edited               = true,
                Published            = true,
                NodeObjectType       = Guid.NewGuid()
            };

            item.AdditionalData.Add("test1", 3);
            item.AdditionalData.Add("test2", "valuie");

            var result = ss.ToStream(item);
            var json   = result.ResultStream.ToJsonString();

            Debug.Print(json); // FIXME: compare with v7
        }
Пример #2
0
        private DocumentEntitySlim BuildDocumentEntity(BaseDto dto)
        {
            // EntitySlim does not track changes
            var entity = new DocumentEntitySlim();

            BuildContentEntity(entity, dto);

            if (dto is DocumentEntityDto contentDto)
            {
                // fill in the invariant info
                entity.Edited     = contentDto.Edited;
                entity.Published  = contentDto.Published;
                entity.Variations = contentDto.Variations;
            }

            return(entity);
        }
Пример #3
0
        public void Can_Serialize_Without_Error()
        {
            DocumentEntitySlim item = _builder
                                      .WithId(3)
                                      .WithCreatorId(4)
                                      .WithName("Test")
                                      .WithParentId(5)
                                      .WithSortOrder(6)
                                      .WithLevel(7)
                                      .WithContentTypeAlias("test1")
                                      .WithContentTypeIcon("icon")
                                      .WithContentTypeThumbnail("thumb")
                                      .WithHasChildren(true)
                                      .WithPublished(true)
                                      .AddAdditionalData()
                                      .WithKeyValue("test1", 3)
                                      .WithKeyValue("test2", "value")
                                      .Done()
                                      .Build();

            var json = JsonConvert.SerializeObject(item);

            Debug.Print(json);
        }
Пример #4
0
 private DocumentEntitySlim BuildVariants(DocumentEntitySlim entity)
 => BuildVariants(new[] { entity }).First();
Пример #5
0
        public void Is_Built_Correctly()
        {
            // Arrange
            const int    testId                   = 11;
            const string testName                 = "Test";
            const int    testCreatorId            = 22;
            const int    testLevel                = 3;
            const string testPath                 = "-1,23";
            const int    testParentId             = 5;
            const int    testSortOrder            = 6;
            const bool   testHasChildren          = true;
            const bool   testPublished            = true;
            const string testContentTypeAlias     = "test1";
            const string testContentTypeIcon      = "icon";
            const string testContentTypeThumbnail = "thumb";
            var          testKey                  = Guid.NewGuid();
            DateTime     testCreateDate           = DateTime.Now.AddHours(-1);
            DateTime     testUpdateDate           = DateTime.Now;
            var          testAdditionalData1      = new KeyValuePair <string, object>("test1", 123);
            var          testAdditionalData2      = new KeyValuePair <string, object>("test2", "hello");

            var builder = new DocumentEntitySlimBuilder();

            // Act
            DocumentEntitySlim item = builder
                                      .WithId(testId)
                                      .WithKey(testKey)
                                      .WithCreatorId(testCreatorId)
                                      .WithCreateDate(testCreateDate)
                                      .WithUpdateDate(testUpdateDate)
                                      .WithName(testName)
                                      .WithParentId(testParentId)
                                      .WithSortOrder(testSortOrder)
                                      .WithLevel(testLevel)
                                      .WithPath(testPath)
                                      .WithContentTypeAlias(testContentTypeAlias)
                                      .WithContentTypeIcon(testContentTypeIcon)
                                      .WithContentTypeThumbnail(testContentTypeThumbnail)
                                      .WithHasChildren(testHasChildren)
                                      .WithPublished(testPublished)
                                      .AddAdditionalData()
                                      .WithKeyValue(testAdditionalData1.Key, testAdditionalData1.Value)
                                      .WithKeyValue(testAdditionalData2.Key, testAdditionalData2.Value)
                                      .Done()
                                      .Build();

            // Assert
            Assert.AreEqual(testId, item.Id);
            Assert.AreEqual(testKey, item.Key);
            Assert.AreEqual(testName, item.Name);
            Assert.AreEqual(testCreateDate, item.CreateDate);
            Assert.AreEqual(testUpdateDate, item.UpdateDate);
            Assert.AreEqual(testCreatorId, item.CreatorId);
            Assert.AreEqual(testParentId, item.ParentId);
            Assert.AreEqual(testSortOrder, item.SortOrder);
            Assert.AreEqual(testPath, item.Path);
            Assert.AreEqual(testLevel, item.Level);
            Assert.AreEqual(testContentTypeAlias, item.ContentTypeAlias);
            Assert.AreEqual(testContentTypeIcon, item.ContentTypeIcon);
            Assert.AreEqual(testContentTypeThumbnail, item.ContentTypeThumbnail);
            Assert.AreEqual(testHasChildren, item.HasChildren);
            Assert.AreEqual(testPublished, item.Published);
            Assert.AreEqual(2, item.AdditionalData.Count);
            Assert.AreEqual(testAdditionalData1.Value, item.AdditionalData[testAdditionalData1.Key]);
            Assert.AreEqual(testAdditionalData2.Value, item.AdditionalData[testAdditionalData2.Key]);
        }