public void SetResolutionScenario(PageLink pageLink, PageValidationError pageValidationError) { var resolutionOwner = TestSettings.Instance.DefaultDocumentationOwner; if (pageLink.ReferencingPage.State.Keys.Contains(DocPageValidatorResources.PageStateKeyOwner)) resolutionOwner = pageLink.ReferencingPage.State[DocPageValidatorResources.PageStateKeyOwner].ToString(); var sprint = TestSettings.Instance.CurrentSprint; var priority = TestSettings.Instance.ErrorResolutionPriorities[pageValidationError.ValidationType]; var resolutionScenario = String.Format(DocPageValidatorResources.InvalidPageLinkResolutionScenario, sprint, resolutionOwner, priority, pageLink.LinkText, pageLink.ReferencingPage.Url.AbsoluteUri); pageValidationError.ResolutionScenario = resolutionScenario; }
private void SetPageLinkValidationErrors() { foreach (var page in pages) { foreach (var pageLink in page.PageLinks) { if (!pageLink.ReferencedPage.Found) { if (pageLink.ReferencedPage.RequestException != null) { var pageValidationError = new PageValidationError( SiteValidatorResources.LinkRequestExceptionErrorType, String.Format(SiteValidatorResources.LinkRequestExceptionErrorMessage, pageLink.LinkText, pageLink.LinkHref, pageLink.ReferencedPage.RequestException.Message), ""); page.ValidationErrors.Add(pageValidationError); if (badLinkResolver != null) badLinkResolver.SetResolutionScenario(pageLink, pageValidationError); } else { var pageValidationError = new PageValidationError( SiteValidatorResources.LinkRequestNonSuccessStatusCodeErrorType, String.Format(SiteValidatorResources.LinkRequestNonSuccessStatusCodeErrorMessage, pageLink.LinkText, pageLink.LinkHref, pageLink.ReferencedPage.StatusCode), "" ); page.ValidationErrors.Add(pageValidationError); if (badLinkResolver != null) badLinkResolver.SetResolutionScenario(pageLink, pageValidationError); } } } } }