public void CanRead_CurrentMessage_FromNewStructure_In_CCnet15_With_2_FailingProjects() { const string xml = @"<Projects> <Project name='project1' activity='Sleeping' lastBuildStatus='Failure'> <messages> <message text='Breakers : a, b' kind='Breakers'/> <message text='FailingTasks : Step1, Step2' kind='FailingTasks'/> </messages> </Project> <Project name='project2' activity='Sleeping' lastBuildStatus='Failure'> <messages> <message text='Breakers : c, d' kind='Breakers'/> <message text='FailingTasks : Step1, Step2' kind='FailingTasks'/> </messages> </Project> </Projects>" ; _transformer = new BuildDataTransformer(_configSettings); var projectStatuses = _transformer.Transform(xml); Assert.That(projectStatuses.Count(), Is.EqualTo(2)); Assert.That(projectStatuses.First().CurrentMessage, Is.EqualTo("Breakers : a, b")); Assert.That(projectStatuses.Second().CurrentMessage, Is.EqualTo("Breakers : c, d")); }
public void SetUp() { _viewUrl = new ViewUrl("http://valid/XmlStatusReport.aspx"); _configSettings = new ConfigSettings { URL = _viewUrl.Url }; _transformer = new BuildDataTransformer(_configSettings); }
public void CanFilter_ProjectName_With_PlainProjectName_AsRegEx() { _configSettings.ProjectNameRegEx = "BarProject"; _transformer = new BuildDataTransformer(_configSettings); var projectStatuses = _transformer.Transform(ThreeProjectsProjectXml); Assert.That(projectStatuses.Count(), Is.EqualTo(1)); Assert.That(projectStatuses.First().Name, Is.EqualTo("BarProject")); }
public void CanFilter_ProjectName_With_OR_RegEx() { _configSettings.ProjectNameRegEx = "FooProject|BarProject"; _transformer = new BuildDataTransformer(_configSettings); var projectStatuses = _transformer.Transform(SimilarProjectXml); Assert.That(projectStatuses.Count(), Is.EqualTo(2)); Assert.That(projectStatuses.First().Name, Is.EqualTo("FooProject")); Assert.That(projectStatuses.Second().Name, Is.EqualTo("BarProject")); }
public void CanFilter_Category() { const string xml = @"<Projects> <Project name='ImportantProject' category='Important' /> <Project name='LowPriorityProject' category='LowPriority'/> </Projects>" ; _configSettings.CategoryRegEx = "Important"; _transformer = new BuildDataTransformer(_configSettings); var projectStatuses = _transformer.Transform(xml); Assert.That(projectStatuses.Count(), Is.EqualTo(1)); Assert.That(projectStatuses.First().Name, Is.EqualTo("ImportantProject")); }
public void RegExFilter_IsUpdated_After_ConfigUpdated() { _configSettings.ProjectNameRegEx = "FooProject|BarProject"; _transformer = new BuildDataTransformer(_configSettings); var projectStatuses = _transformer.Transform(SimilarProjectXml); Assert.That(projectStatuses.Count(), Is.EqualTo(2)); // notify of config change and fetch again var newSettings = new ConfigSettings { ProjectNameRegEx = "BarProject", URL = _viewUrl.Url }; _transformer.ConfigUpdated(newSettings); projectStatuses = _transformer.Transform(SimilarProjectXml); Assert.That(projectStatuses.Count(), Is.EqualTo(1)); Assert.That(projectStatuses.First().Name, Is.EqualTo("BarProject")); }
public void CanRead_CurrentMessage_FromNewStructure_In_CCnet15_With_NoFailing_Projects() { const string xml = @"<Projects> <Project name='project1' CurrentMessage='' activity='Sleeping' lastBuildStatus='Success'> <messages/> </Project> <Project name='project2' CurrentMessage='' activity='Sleeping' lastBuildStatus='Success'> <messages/> </Project> </Projects>" ; _transformer = new BuildDataTransformer(_configSettings); var projectStatuses = _transformer.Transform(xml); Assert.That(projectStatuses.Count(), Is.EqualTo(2)); Assert.That(projectStatuses.First().CurrentMessage, Is.EqualTo("")); Assert.That(projectStatuses.Second().CurrentMessage, Is.EqualTo("")); }