public void CrossSiteTransform_SameSite_WebPartPageTest() { using (var sourceClientContext = TestCommon.CreateClientContext(TestCommon.AppSetting("SPODevTeamSiteUrl"))) { var pageTransformator = new PageTransformator(sourceClientContext); pageTransformator.RegisterObserver(new UnitTestLogObserver()); var pages = sourceClientContext.Web.GetPages("wpp_with"); foreach (var page in pages) { PageTransformationInformation pti = new PageTransformationInformation(page) { // If target page exists, then overwrite it Overwrite = true, // Don't log test runs SkipTelemetry = true, // ModernizationCenter options ModernizationCenterInformation = new ModernizationCenterInformation() { AddPageAcceptBanner = true }, // Migrated page gets the name of the original page //TargetPageTakesSourcePageName = true, // Give the migrated page a specific prefix, default is Migrated_ TargetPagePrefix = "Converted_", // Configure the page header, empty value means ClientSidePageHeaderType.None //PageHeader = new ClientSidePageHeader(cc, ClientSidePageHeaderType.None, null), // If the page is a home page then replace with stock home page //ReplaceHomePageWithDefaultHomePage = true, // Replace embedded images and iframes with a placeholder and add respective images and video web parts at the bottom of the page HandleWikiImagesAndVideos = false, // Callout to your custom code to allow for title overriding //PageTitleOverride = titleOverride, // Callout to your custom layout handler //LayoutTransformatorOverride = layoutOverride, // Callout to your custom content transformator...in case you fully want replace the model //ContentTransformatorOverride = contentOverride, }; pageTransformator.Transform(pti); } } Assert.Inconclusive(TestCommon.InconclusiveNoAutomatedChecksMessage); }
/// <summary> /// Different page same test conditions /// </summary> /// <param name="pageName"></param> private void PageToTransform(string pageName) { using (var targetClientContext = TestCommon.CreateClientContext(TestCommon.AppSetting("SPOTargetSiteUrl"))) { using (var sourceClientContext = TestCommon.CreateOnPremisesClientContext(TestCommon.AppSetting("SPOnPremTeamSiteUrl"))) { var pageTransformator = new PageTransformator(sourceClientContext, targetClientContext); pageTransformator.RegisterObserver(new MarkdownObserver(folder: "c:\\temp", includeVerbose: true)); pageTransformator.RegisterObserver(new UnitTestLogObserver()); var pages = sourceClientContext.Web.GetPages(pageName); pages.FailTestIfZero(); foreach (var page in pages) { PageTransformationInformation pti = new PageTransformationInformation(page) { // If target page exists, then overwrite it Overwrite = true, // Don't log test runs SkipTelemetry = true, //Permissions are unlikely to work given cross domain KeepPageSpecificPermissions = false, }; pti.MappingProperties["SummaryLinksToQuickLinks"] = "true"; pti.MappingProperties["UseCommunityScriptEditor"] = "true"; var result = pageTransformator.Transform(pti); } pageTransformator.FlushObservers(); //TODO: Add Target Site Page Creation Checking } } }
public void BasicOnlineWikiPage_TermMappingTest() { using (var targetClientContext = TestCommon.CreateClientContext(TestCommon.AppSetting("SPOTargetSiteUrl"))) { using (var sourceClientContext = TestCommon.CreateClientContext(TestCommon.AppSetting("SPODevTeamSiteUrl"))) { var pageTransformator = new PageTransformator(sourceClientContext, targetClientContext); //pageTransformator.RegisterObserver(new MarkdownObserver(folder: "c:\\temp", includeVerbose: true)); pageTransformator.RegisterObserver(new UnitTestLogObserver()); var pages = sourceClientContext.Web.GetPagesFromList("Site Pages", pageNameStartsWith: "Common-WikiPageTest"); pages.FailTestIfZero(); foreach (var page in pages) { PageTransformationInformation pti = new PageTransformationInformation(page) { // If target page exists, then overwrite it Overwrite = true, // Don't log test runs SkipTelemetry = true, //Permissions are unlikely to work given cross domain KeepPageSpecificPermissions = false, SkipUserMapping = true, SkipDefaultUrlRewrite = true, SkipUrlRewrite = true, // Term store mapping TermMappingFile = @"..\..\Transform\Mapping\term_mapping_sample.csv", //Should process default mapping SkipTermStoreMapping = true, CopyPageMetadata = true }; Console.WriteLine("SharePoint Version: {0}", pti.SourceVersion); pti.MappingProperties["SummaryLinksToQuickLinks"] = "true"; pti.MappingProperties["UseCommunityScriptEditor"] = "true"; var result = pageTransformator.Transform(pti); } pageTransformator.FlushObservers(); } } }
public void Logging_ErrorTest() { // Deliberate Error var pageTransformator = new PageTransformator(null); pageTransformator.RegisterObserver(new UnitTestLogObserver()); // Example of registering an observer, this can be anything really. PageTransformationInformation pti = new PageTransformationInformation(null); // Should capture a argument exception Assert.ThrowsException <ArgumentNullException>(() => { pageTransformator.Transform(pti); }); }
public void Reporting_SameSite_WebPartPageTest() { using (var sourceClientContext = TestCommon.CreateClientContext()) { var pageTransformator = new PageTransformator(sourceClientContext); pageTransformator.RegisterObserver(new UnitTestLogObserver()); //Registers the unit test observer to log details for testing var pages = sourceClientContext.Web.GetPages("wpp"); foreach (var page in pages) { PageTransformationInformation pti = new PageTransformationInformation(page) { // If target page exists, then overwrite it Overwrite = true, // Don't log test runs SkipTelemetry = true, // ModernizationCenter options ModernizationCenterInformation = new ModernizationCenterInformation() { AddPageAcceptBanner = true }, // Give the migrated page a specific prefix, default is Migrated_ TargetPagePrefix = "Converted_", // Replace embedded images and iframes with a placeholder and add respective images and video web parts at the bottom of the page HandleWikiImagesAndVideos = false, }; pageTransformator.Transform(pti); pageTransformator.FlushObservers(); } } Assert.Inconclusive(TestCommon.InconclusiveNoAutomatedChecksMessage); }
public void CrossSiteTransform_OverwriteOffTest() { using (var targetClientContext = TestCommon.CreateClientContext(TestCommon.AppSetting("SPOTargetSiteUrl"))) { //Test Requires a test site using (var sourceClientContext = TestCommon.CreateClientContext(TestCommon.AppSetting("SPODevTeamSiteUrl"))) { var pageTransformator = new PageTransformator(sourceClientContext, targetClientContext); pageTransformator.RegisterObserver(new UnitTestLogObserver()); var pages = sourceClientContext.Web.GetPages("wpp_with"); //Specific page - aim for one file foreach (var page in pages) { PageTransformationInformation pti = new PageTransformationInformation(page) { // If target page exists, then overwrite it Overwrite = false, // Don't log test runs SkipTelemetry = true, }; pti.MappingProperties["SummaryLinksToQuickLinks"] = "true"; pti.MappingProperties["UseCommunityScriptEditor"] = "true"; var result = Assert.ThrowsException <ArgumentException>(() => { var result1 = pageTransformator.Transform(pti); var result2 = pageTransformator.Transform(pti); //Run twice incase target site didnt have the file in the first place }); Assert.IsTrue(result.Message.Contains("Not overwriting - there already exists a page with name")); } } } }
public void Logging_NormalOperationTest() { using (var sourceClientContext = TestCommon.CreateClientContext()) { var pageTransformator = new PageTransformator(sourceClientContext); pageTransformator.RegisterObserver(new UnitTestLogObserver()); // Example of registering an observer, this can be anything really. var pages = sourceClientContext.Web.GetPages("wk").Take(1); foreach (var page in pages) { PageTransformationInformation pti = new PageTransformationInformation(page) { // If target page exists, then overwrite it Overwrite = true, // Don't log test runs SkipTelemetry = true, // ModernizationCenter options ModernizationCenterInformation = new ModernizationCenterInformation() { AddPageAcceptBanner = true }, // Give the migrated page a specific prefix, default is Migrated_ TargetPagePrefix = "Converted_", // Replace embedded images and iframes with a placeholder and add respective images and video web parts at the bottom of the page HandleWikiImagesAndVideos = false, }; pageTransformator.Transform(pti); } } }
public void CrossSiteBlogTransformTest() { using (var targetClientContext = TestCommon.CreateClientContext(TestCommon.AppSetting("SPOTargetSiteUrl"))) { using (var sourceClientContext = TestCommon.CreateClientContext("https://bertonline.sharepoint.com/sites/modernizationtestpages/blog")) { var pageTransformator = new PageTransformator(sourceClientContext, targetClientContext); pageTransformator.RegisterObserver(new UnitTestLogObserver()); var pages = sourceClientContext.Web.GetBlogsFromList(CacheManager.Instance.GetBlogListName(sourceClientContext), "k"); foreach (var page in pages) { PageTransformationInformation pti = new PageTransformationInformation(page) { // If target page exists, then overwrite it Overwrite = true, // Don't log test runs SkipTelemetry = true, KeepPageCreationModificationInformation = true, PostAsNews = true, PublishCreatedPage = true, CopyPageMetadata = true, SetAuthorInPageHeader = true, //TargetPageFolder = "Blogs", //SkipUserMapping = true, //AddTableListImageAsImageWebPart = true, // ModernizationCenter options //ModernizationCenterInformation = new ModernizationCenterInformation() //{ // AddPageAcceptBanner = true //}, // Migrated page gets the name of the original page //TargetPageTakesSourcePageName = true, // Give the migrated page a specific prefix, default is Migrated_ //TargetPagePrefix = "Yes_", // Configure the page header, empty value means ClientSidePageHeaderType.None //PageHeader = new ClientSidePageHeader(cc, ClientSidePageHeaderType.None, null), // If the page is a home page then replace with stock home page //ReplaceHomePageWithDefaultHomePage = true, // Replace embedded images and iframes with a placeholder and add respective images and video web parts at the bottom of the page // HandleWikiImagesAndVideos = false, // Callout to your custom code to allow for title overriding //PageTitleOverride = titleOverride, // Callout to your custom layout handler //LayoutTransformatorOverride = layoutOverride, // Callout to your custom content transformator...in case you fully want replace the model //ContentTransformatorOverride = contentOverride, }; pti.MappingProperties["SummaryLinksToQuickLinks"] = "true"; pti.MappingProperties["UseCommunityScriptEditor"] = "true"; var result = pageTransformator.Transform(pti); } } } //Assert.Inconclusive(TestCommon.InconclusiveNoAutomatedChecksMessage); }
public void RunWPTest() { using (var cc = TestCommon.CreateClientContext()) { var pageTransformator = new PageTransformator(cc); pageTransformator.RegisterObserver(new MarkdownObserver(folder: "c:\\temp", includeVerbose: true, includeDebugEntries: true)); pageTransformator.RegisterObserver(new ConsoleObserver()); var pages = cc.Web.GetPages("wp_"); //var pages = cc.Web.GetPages("pagein", "folder1/sub1"); //var pages = cc.Web.GetPagesFromList("SiteAssets", "loc_", "Folder1"); foreach (var page in pages) { PageTransformationInformation pti = new PageTransformationInformation(page) { // If target page exists, then overwrite it Overwrite = true, // Don't log test runs SkipTelemetry = true, //RemoveEmptySectionsAndColumns = false, // ModernizationCenter options //ModernizationCenterInformation = new ModernizationCenterInformation() //{ // AddPageAcceptBanner = true //}, // Migrated page gets the name of the original page //TargetPageTakesSourcePageName = true, // Give the migrated page a specific prefix, default is Migrated_ //TargetPagePrefix = "Yes_", // Configure the page header, empty value means ClientSidePageHeaderType.None //PageHeader = new ClientSidePageHeader(cc, ClientSidePageHeaderType.None, null), // If the page is a home page then replace with stock home page //ReplaceHomePageWithDefaultHomePage = true, // Replace embedded images and iframes with a placeholder and add respective images and video web parts at the bottom of the page //HandleWikiImagesAndVideos = false, // Callout to your custom code to allow for title overriding //PageTitleOverride = titleOverride, // Callout to your custom layout handler //LayoutTransformatorOverride = layoutOverride, // Callout to your custom content transformator...in case you fully want replace the model //ContentTransformatorOverride = contentOverride, }; pti.MappingProperties["SummaryLinksToQuickLinks"] = "true"; pti.MappingProperties["UseCommunityScriptEditor"] = "true"; pageTransformator.Transform(pti); } pageTransformator.FlushObservers(); } }