Beispiel #1
0
        private void ConfiguredCustomReplaceTest(string custom, string expected, IRunSettingsTemplateReplacements replacements)
        {
            var runSettingsTemplate = new RunSettingsTemplate();

            var customTemplate = runSettingsTemplate.ConfigureCustom(custom);

            var replaced = runSettingsTemplate.Replace(customTemplate, replacements);

            XmlAssert.NoXmlDifferences(replaced, expected);
        }
Beispiel #2
0
 public static void AssertAllEmpty(IRunSettingsTemplateReplacements replacements)
 {
     Assert.IsEmpty(replacements.ModulePathsExclude);
     Assert.IsEmpty(replacements.ModulePathsInclude);
     Assert.IsEmpty(replacements.AttributesExclude);
     Assert.IsEmpty(replacements.AttributesInclude);
     Assert.IsEmpty(replacements.FunctionsExclude);
     Assert.IsEmpty(replacements.FunctionsInclude);
     Assert.IsEmpty(replacements.CompanyNamesExclude);
     Assert.IsEmpty(replacements.CompanyNamesInclude);
     Assert.IsEmpty(replacements.PublicKeyTokensExclude);
     Assert.IsEmpty(replacements.PublicKeyTokensInclude);
     Assert.IsEmpty(replacements.SourcesExclude);
     Assert.IsEmpty(replacements.SourcesInclude);
 }
        private string AddFCCSettings(string runSettings, IRunSettingsTemplateReplacements runSettingsTemplateReplacements)
        {
            var xpathNavigable = XmlHelper.CreateXPathNavigable(runSettings);
            var mockRunSettingsTemplateReplacementsFactory = autoMocker.GetMock <IRunSettingsTemplateReplacementsFactory>();

            mockRunSettingsTemplateReplacementsFactory.Setup(
                runSettingsTemplateReplacementsFactory => runSettingsTemplateReplacementsFactory.Create(
                    It.IsAny <IEnumerable <ITestContainer> >(),
                    It.IsAny <Dictionary <string, IUserRunSettingsProjectDetails> >(),
                    It.IsAny <string>()
                    )
                ).Returns(runSettingsTemplateReplacements);
            return(userRunSettingsService.AddFCCRunSettings(
                       xpathNavigable, new Mock <IRunSettingsConfigurationInfo>().Object, null, null).DumpXmlContents());
        }
        private void ReplaceExcludesIncludes(XPathNavigator msDataCollectorNavigator, IRunSettingsTemplateReplacements replacements)
        {
            var toReplace = msDataCollectorNavigator.OuterXml;
            var replaced  = runSettingsTemplate.Replace(toReplace, replacements);

            msDataCollectorNavigator.OuterXml = replaced;
        }
        private void EnsureCorrectMsDataCollectorAndReplace(XPathNavigator xpathNavigator, IRunSettingsTemplateReplacements replacements)
        {
            var addedMsDataCollector             = true;
            var movedToDataCollectionRunSettings = xpathNavigator.MoveToChild("DataCollectionRunSettings", "");

            if (movedToDataCollectionRunSettings)
            {
                var movedToDataCollectors = xpathNavigator.MoveToChild("DataCollectors", "");
                if (movedToDataCollectors)
                {
                    XPathNavigator msDataCollectorNavigator = MoveToMsDataCollectorFromDataCollectors(xpathNavigator);

                    if (msDataCollectorNavigator != null)
                    {
                        addedMsDataCollector = false;
                        var msDataCollectorNavigatorClone = msDataCollectorNavigator.Clone();
                        EnsureCorrectCoberturaFormat(msDataCollectorNavigator);
                        ReplaceExcludesIncludes(msDataCollectorNavigatorClone, replacements);
                    }
                    else
                    {
                        xpathNavigator.AppendChild(runSettingsTemplate.MsDataCollectorElement);
                    }
                }
                else
                {
                    xpathNavigator.AppendChild(runSettingsTemplate.DataCollectorsElement);
                }
            }
            else
            {
                xpathNavigator.AppendChild(runSettingsTemplate.DataCollectionRunSettingsElement);
            }

            if (addedMsDataCollector)
            {
                xpathNavigator.MoveToRoot();
                var dataCollectorsNavigator  = xpathNavigator.SelectSingleNode("/RunSettings/DataCollectionRunSettings/DataCollectors");
                var msDataCollectorNavigator = MoveToMsDataCollectorFromDataCollectors(dataCollectorsNavigator);
                ReplaceExcludesIncludes(msDataCollectorNavigator, replacements);
            }
        }
        private void EnsureTestAdaptersPathsAndReplace(XPathNavigator xpathNavigator, IRunSettingsTemplateReplacements replacements)
        {
            var movedToRunConfiguration = xpathNavigator.MoveToChild("RunConfiguration", "");

            if (movedToRunConfiguration)
            {
                if (!xpathNavigator.HasChild("TestAdaptersPaths"))
                {
                    xpathNavigator.AppendChild(runSettingsTemplate.TestAdaptersPathElement);
                }
                // todo ResultsDirectory ?
            }
            else
            {
                xpathNavigator.PrependChild(runSettingsTemplate.RunConfigurationElement);
                xpathNavigator.MoveToChild("RunConfiguration", "");
            }

            var replaced = runSettingsTemplate.Replace(xpathNavigator.OuterXml, replacements);

            xpathNavigator.OuterXml = replaced;
        }
        private void TestAddFCCSettings(string runSettings, string expectedFccRunSettings, IRunSettingsTemplateReplacements runSettingsTemplateReplacements)
        {
            var actualRunSettings = AddFCCSettings(runSettings, runSettingsTemplateReplacements);

            XmlAssert.NoXmlDifferences(actualRunSettings, expectedFccRunSettings);
        }