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' lastBuildTime='2011-08-18T14:18:06' /> <Project name='LowPriorityProject' category='LowPriority' lastBuildTime='2011-08-18T14:18:06' /> </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 ScreenUpdater(ICradiatorView view, DiscJockey discJockey, ICountdownTimer countdownTimer, IPollTimer pollTimer, BuildDataFetcher buildDataFetcher, BuildDataTransformer buildDataTransformer, FetchExceptionHandler fetchExceptionHandler, BackgroundWorker worker) { _view = view; _discJockey = discJockey; _countdownTimer = countdownTimer; _pollTimer = pollTimer; _pollTimer.Tick = (sender, e) => Update(); _fetcher = buildDataFetcher; _fetchExceptionHandler = fetchExceptionHandler; _transformer = buildDataTransformer; _worker = worker; worker.RunWorkerCompleted += DataFetched; worker.DoWork += FetchData; }
public ScreenUpdater(ICradiatorView view, DiscJockey discJockey, ICountdownTimer countdownTimer, IPollTimer pollTimer, IConfigSettings configSettings, BuildDataFetcher buildDataFetcher, BuildDataTransformer transformer, FetchExceptionHandler fetchExceptionHandler, BackgroundWorker worker) { _view = view; _discJockey = discJockey; _countdownTimer = countdownTimer; _pollTimer = pollTimer; _configSettings = configSettings; _pollTimer.Tick = (sender, e) => PollTimeup(); _fetcher = buildDataFetcher; _fetchExceptionHandler = fetchExceptionHandler; _transformer = transformer; SetLocalValuesFromConfig(configSettings); _configSettings.AddObserver(this); _worker = worker; worker.DoWork += FetchData; worker.RunWorkerCompleted += DataFetched; }
public void SetUp() { _cruiseAddress = new CruiseAddress("http://valid/XmlStatusReport.aspx"); _configSettings = new ConfigSettings { URL = _cruiseAddress.Url }; _transformer = new BuildDataTransformer(_configSettings); }
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 = _cruiseAddress.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_1_FailingProject() { const string xml = @"<Projects> <Project name='ccnet1.5_project' activity='Sleeping' lastBuildStatus='Failure' lastBuildTime='2011-08-18T14:18:06' > <messages> <message text='Breakers : a, b' 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(1)); Assert.That(projectStatuses.First().CurrentMessage, Is.EqualTo("Breakers : a, b")); }
public void SetUp() { _viewUrl = new ViewUrl("http://valid/XmlStatusReport.aspx"); _configSettings = new ConfigSettings { URL = _viewUrl.Url }; _transformer = new BuildDataTransformer(_configSettings); }
public void CanRead_CurrentMessage_FromNewStructure_In_CCnet15_With_NoFailing_Projects() { const string xml = @"<Projects> <Project name='project1' CurrentMessage='' activity='Sleeping' lastBuildStatus='Success' lastBuildTime='2011-08-18T14:18:06' > <messages/> </Project> <Project name='project2' CurrentMessage='' activity='Sleeping' lastBuildStatus='Success' lastBuildTime='2011-08-18T14:18:06' > <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("")); }
public void CanRead_CurrentMessage_FromNewStructure_In_CCnet15_With_1_Failing_1_Success() { const string xml = @"<Projects> <Project name='project1' CurrentMessage='' activity='Sleeping' lastBuildStatus='Success'> <messages/> </Project> <Project name='project2' activity='Sleeping' CurrentMessage='' lastBuildStatus='Failure'> <messages> <message text='Breakers : a, b' 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("")); Assert.That(projectStatuses.Second().CurrentMessage, Is.EqualTo("Breakers : a, b")); }