public void Navigate_ContentListField_Null() { var content = new TestPageContent(); var explorer = ContentExplorer.Create(metadataManager, content, "Headers[0]"); Assert.Null(explorer); }
public void Navigate_ContentField() { var content = new TestPageContent { Header = new PageHeaderContent() }; var explorer = ContentExplorer.Create(metadataManager, content, "Header"); Assert.NotNull(explorer); }
public void GetPageTitle() { var pageType = pageMetadataManager.FindPageMetadataByContentType(typeof(TestPageContent)); var pageContent = new TestPageContent { Title = "test" }; var pageTitle = pageType.GetPageHeader(pageContent); Assert.Equal(pageContent.Title, pageTitle); }
public async Task SetPageContent() { var page = await pageService.FindPageByPathAsync(string.Empty); var newContent = new TestPageContent { Title = "custom" }; await pageService.SetPageContentAsync(page, newContent); var pageModel = (TestPageContent)await pageService.GetPageContentAsync(page); Assert.Equal(newContent.Title, pageModel.Title); }
public void SerializeToString() { var content = new TestPageContent { Title = "page", Header = new PageHeaderContent { Title = "header" }, Headers = new List<PageHeaderContent> { new PageHeaderContent { Title = "header" } } }; var contentMetadata = metadataManager.GetMetadata(content.GetType()); var contentData = contentMetadata.ConvertContentModelToDictionary(content); var json = JsonContentDataSerializer.SerializeToString(contentData); Assert.NotNull(json); }
public void ConvertDictionaryToContentModel() { var contentMetadata = metadataManager.GetMetadata <TestPageContent>(); var sourceModel = new TestPageContent { Title = "test" }; var data = contentMetadata.ConvertContentModelToDictionary(sourceModel); var model = contentMetadata.ConvertDictionaryToContentModel(data) as TestPageContent; Assert.NotNull(model); Assert.Equal(model.GetType(), sourceModel.GetType()); Assert.Equal(model.Title, sourceModel.Title); }
public void Create_Root() { var content = new TestPageContent(); var explorer = ContentExplorer.Create(metadataManager, content); Assert.NotNull(explorer); Assert.NotNull(explorer.Metadata); Assert.Null(explorer.Field); Assert.Equal(content, explorer.Model); Assert.Equal(string.Empty, explorer.ModelPath); Assert.Equal(content.Title, explorer.Title); Assert.Null(explorer.Root); Assert.Null(explorer.Parent); Assert.Equal(-1, explorer.Index); Assert.True(explorer.IsRoot); }
public async Task SetContent() { var page = await pageService.FindPageByPathAsync("test"); var edit = await pageContentService.BeginEditAsync(page); var newContent = new TestPageContent() { Title = "test2" }; await pageContentService.SetContentAsync(edit, newContent); var contentData = (TestPageContent)await pageContentService.GetContentAsync(edit); Assert.NotNull(contentData); Assert.Equal("test2", contentData.Title); }
public void Create_SpecifyPath() { var content = new TestPageContent { Header = new PageHeaderContent() }; var explorer = ContentExplorer.Create(metadataManager, content, "Header"); Assert.NotNull(explorer); Assert.NotNull(explorer.Metadata); Assert.NotNull(explorer.Field); Assert.Equal(explorer.Model, content.Header); Assert.Equal("Header", explorer.ModelPath); Assert.NotEqual(explorer.Root, explorer); Assert.NotNull(explorer.Parent); Assert.Equal(explorer.Index, -1); Assert.False(explorer.IsRoot); }
public void DeserializeFromString() { var content = new TestPageContent { Title = "page", Header = new PageHeaderContent { Title = "header" }, Headers = new List<PageHeaderContent> { new PageHeaderContent { Title = "header" } } }; var contentMetadata = metadataManager.GetMetadata(content.GetType()); var contentData = contentMetadata.ConvertContentModelToDictionary(content); var json = JsonContentDataSerializer.SerializeToString(contentData); var deserializedContentData = JsonContentDataSerializer.DeserializeFromString(json); var deserializedContent = (TestPageContent)contentMetadata.ConvertDictionaryToContentModel(deserializedContentData); Assert.NotNull(deserializedContent); Assert.Equal(deserializedContent.Title, content.Title); Assert.Equal(deserializedContent.Header.Title, content.Header.Title); Assert.Equal(deserializedContent.Headers[0].Title, content.Headers[0].Title); }
public void ApplyInjections() { var contentMetadata = metadataManager.GetMetadata <TestPageContent>(); var services = new ServiceCollection().AddScoped <TestService>(); using (var serviceProvider = services.BuildServiceProvider()) { using (var serviceScope = serviceProvider.CreateScope()) { var page = TestPageContent.Create("test", new PageHeaderContent(), new List <PageHeaderContent> { new PageHeaderContent() }); metadataManager.ApplyInjections(page, serviceScope.ServiceProvider, false); Assert.NotNull(page.Service); Assert.Null(page.Header.Service); Assert.Null(page.Headers[0].Service); } } }
async Task IAsyncLifetime.InitializeAsync() { var pageCollectionRepository = serviceScope.ServiceProvider.GetService <IPageCollectionRepository>(); var pageRepository = serviceScope.ServiceProvider.GetService <IPageRepository>(); var pageType = pageMetadataManager.FindPageMetadataByContentType(typeof(TestPageContent)); var pageCollection = await pageCollectionRepository.CreateCollectionAsync("test", "Test collection", pageType.Name, PageSortMode.FirstOld, null); var mainPage = await pageRepository.CreatePageAsync("test", pageCollection.Id, pageType.Name, "test", pageType.ContentMetadata.ConvertContentModelToDictionary(TestPageContent.CreateWithOnlyTitle("test"))); await pageRepository.SetUrlPathAsync(mainPage, "index"); await pageRepository.UpdatePageAsync(mainPage); var testPage = await pageRepository.CreatePageAsync("test", pageCollection.Id, pageType.Name, "test", pageType.ContentMetadata.ConvertContentModelToDictionary(TestPageContent.CreateWithOnlyTitle("test"))); await pageRepository.SetUrlPathAsync(testPage, "test"); await pageRepository.UpdatePageAsync(testPage); }