diff --git a/src/Web/Models/Media/GenericMedia.cs b/src/Web/Models/Media/GenericMedia.cs index 01f8293..7d8e372 100644 --- a/src/Web/Models/Media/GenericMedia.cs +++ b/src/Web/Models/Media/GenericMedia.cs @@ -6,5 +6,5 @@ public class GenericMedia : MediaData /// /// Gets or sets the description. /// - public virtual String Description { get; set; } + public virtual string Description { get; set; } = null!; } \ No newline at end of file diff --git a/src/Web/Models/Media/ImageFile.cs b/src/Web/Models/Media/ImageFile.cs index 412f9b6..7f0b6aa 100644 --- a/src/Web/Models/Media/ImageFile.cs +++ b/src/Web/Models/Media/ImageFile.cs @@ -12,5 +12,5 @@ public class ImageFile : ImageData /// /// The copyright. /// - public virtual string Copyright { get; set; } + public virtual string Copyright { get; set; } = null!; } \ No newline at end of file diff --git a/src/Web/Models/Media/VideoFile.cs b/src/Web/Models/Media/VideoFile.cs index 60aedd4..fe3aac1 100644 --- a/src/Web/Models/Media/VideoFile.cs +++ b/src/Web/Models/Media/VideoFile.cs @@ -11,11 +11,11 @@ public class VideoFile : VideoData /// /// Gets or sets the copyright. /// - public virtual string Copyright { get; set; } + public virtual string Copyright { get; set; } = null!; /// /// Gets or sets the URL to the preview image. /// [UIHint(UIHint.Image)] - public virtual ContentReference PreviewImage { get; set; } + public virtual ContentReference PreviewImage { get; set; } = null!; } \ No newline at end of file diff --git a/src/Web/Models/Pages/NewsPage.cs b/src/Web/Models/Pages/NewsPage.cs index 822084e..44f8fce 100644 --- a/src/Web/Models/Pages/NewsPage.cs +++ b/src/Web/Models/Pages/NewsPage.cs @@ -5,5 +5,5 @@ DisplayName = "News Page")] public class NewsPage : PageData { - public virtual string Title { get; set; } + public virtual string Title { get; set; } = null!; } \ No newline at end of file diff --git a/src/Web/Models/Pages/StartPage.cs b/src/Web/Models/Pages/StartPage.cs index 33ed058..5b0137d 100644 --- a/src/Web/Models/Pages/StartPage.cs +++ b/src/Web/Models/Pages/StartPage.cs @@ -1,52 +1,17 @@ using System.ComponentModel.DataAnnotations; namespace Optimizely.TestContainers.Models.Pages; -//using AlloyTemplates.Models.Blocks; /// /// Used for the site's start page and also acts as a container for site settings /// [ContentType( - GUID = "19671657-B684-4D95-A61F-8DD4FE60D559" - /*GroupName = Global.GroupNames.Specialized*/)] -//[SiteImageUrl] -/* -[AvailableContentTypes( - Availability.Specific, - Include = new[] { typeof(ContainerPage), typeof(ProductPage), typeof(StandardPage), typeof(ISearchPage), typeof(LandingPage), typeof(ContentFolder) }, // Pages we can create under the start page... - ExcludeOn = new[] { typeof(ContainerPage), typeof(ProductPage), typeof(StandardPage), typeof(ISearchPage), typeof(LandingPage) })] // ...and underneath those we can't create additional start pages -*/ + GUID = "19671657-B684-4D95-A61F-8DD4FE60D559")] public class StartPage : PageData { [Display( GroupName = SystemTabNames.Content, Order = 320)] [CultureSpecific] - public virtual ContentArea MainContentArea { get; set; } - - /* - [Display(GroupName = Global.GroupNames.SiteSettings, Order = 300)] - public virtual LinkItemCollection ProductPageLinks { get; set; } - - [Display(GroupName = Global.GroupNames.SiteSettings, Order = 350)] - public virtual LinkItemCollection CompanyInformationPageLinks { get; set; } - - [Display(GroupName = Global.GroupNames.SiteSettings, Order = 400)] - public virtual LinkItemCollection NewsPageLinks { get; set; } - - [Display(GroupName = Global.GroupNames.SiteSettings, Order = 450)] - public virtual LinkItemCollection CustomerZonePageLinks { get; set; } - - [Display(GroupName = Global.GroupNames.SiteSettings)] - public virtual PageReference GlobalNewsPageLink { get; set; } - - [Display(GroupName = Global.GroupNames.SiteSettings)] - public virtual PageReference ContactsPageLink { get; set; } - - [Display(GroupName = Global.GroupNames.SiteSettings)] - public virtual PageReference SearchPageLink { get; set; } - - [Display(GroupName = Global.GroupNames.SiteSettings)] - public virtual SiteLogotypeBlock SiteLogotype { get; set; } - */ + public virtual ContentArea MainContentArea { get; set; } = null!; } \ No newline at end of file diff --git a/src/Web/Optimizely.TestContainers.csproj b/src/Web/Optimizely.TestContainers.csproj index a5710e7..be8a83a 100644 --- a/src/Web/Optimizely.TestContainers.csproj +++ b/src/Web/Optimizely.TestContainers.csproj @@ -4,6 +4,12 @@ enable enable + + true + + + true + diff --git a/test/OptimizelyTestContainers.Tests/NewsPageIntegrationTests.cs b/test/OptimizelyTestContainers.Tests/NewsPageIntegrationTests.cs index ae9fa0f..b5c81b9 100644 --- a/test/OptimizelyTestContainers.Tests/NewsPageIntegrationTests.cs +++ b/test/OptimizelyTestContainers.Tests/NewsPageIntegrationTests.cs @@ -20,18 +20,14 @@ public void Can_Create_And_Read_NewsPage() // Import test data var basePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)!; var episerverDataFile = Path.Combine(basePath, "DefaultSiteContent.episerverdata"); - var dataImporter = Services.GetRequiredService(); dataImporter.Import(episerverDataFile); - // Find StartPage from root - // Setup site definition - var startPage = repo.GetChildren(ContentReference.RootPage).First(); + // Setup site definition var siteDefinitionRepo = Services.GetRequiredService(); - siteDefinitionRepo.Save(new SiteDefinition() { Name = "TestSite", @@ -39,15 +35,16 @@ public void Can_Create_And_Read_NewsPage() SiteUrl = new Uri("http://localhost"), }); + // Find first site var allSites = siteDefinitionRepo.List(); - var site = allSites.First(); + // Create NewsPage var news = repo.GetDefault(site.StartPage); news.Name = "Alien Invasion"; news.Title = "Martians Landed in Stockholm"; - // Act + // Act (Save and Load NewsPage) var savedRef = repo.Save(news, SaveAction.Publish, AccessLevel.NoAccess); var loaded = repo.Get(savedRef); diff --git a/test/OptimizelyTestContainers.Tests/OptimizelyIntegrationTestBase.cs b/test/OptimizelyTestContainers.Tests/OptimizelyIntegrationTestBase.cs index 5eab8e1..431c79a 100644 --- a/test/OptimizelyTestContainers.Tests/OptimizelyIntegrationTestBase.cs +++ b/test/OptimizelyTestContainers.Tests/OptimizelyIntegrationTestBase.cs @@ -37,14 +37,6 @@ public async Task InitializeAsync() { webBuilder.ConfigureServices((context, services) => { - // Add CMS services - services.AddCms(); - services.AddCmsHost(); - services.AddCmsFrameworkWeb(); - services.AddCmsCoreWeb(); - services.AddCmsTemplating(); - services.AddCmsUI(); - // Override connection string to use container connection services.Configure(opt => { diff --git a/test/OptimizelyTestContainers.Tests/OptimizelyTestContainers.Tests.csproj b/test/OptimizelyTestContainers.Tests/OptimizelyTestContainers.Tests.csproj index e942175..0838d0f 100644 --- a/test/OptimizelyTestContainers.Tests/OptimizelyTestContainers.Tests.csproj +++ b/test/OptimizelyTestContainers.Tests/OptimizelyTestContainers.Tests.csproj @@ -7,6 +7,14 @@ false + + true + + + + true + + runtime; build; native; contentfiles; analyzers; buildtransitive