public void Should_Filter_Refresh_Based_On_Profile_Name() { var expectedPipelines = new List<DisplayablePipeline> { new DisplayablePipeline("Shared", "bob"){Stages = new List<IStage>(){new FailedStage("","",DateTime.Now.ToString())}}, new DisplayablePipeline("Shared2", "bob"){Stages = new List<IStage>(){new PassedStage("","",DateTime.Now.ToString())}}, new DisplayablePipeline("Shared3", "bob"){Stages = new List<IStage>(){new FailedStage("","",DateTime.Now.ToString())}} }; const string profilesXmlFile = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" + "<Profiles>" + "<Profile name=\"test\">" + "<WhiteList>" + "<Pipeline>Shared</Pipeline>" + "<Pipeline>Shared2</Pipeline>" + "<Pipeline>Shared3</Pipeline>" + "</WhiteList>" + "<Statuses><Failed/><Passed/></Statuses>" + "</Profile></Profiles>"; var fakeFileLoader = new FakeFileLoader(profilesXmlFile); IXmlProfileRetriever xmlProfileRetriever = new XmlProfileRetriever(fakeFileLoader); var homeController = new HomeController(new FakeDashboard(expectedPipelines), xmlProfileRetriever); var result = (ViewResult)homeController.Refresh("test"); var viewModel = (IndexViewModel)result.ViewData.Model; var pipelines = viewModel.Pipelines; Assert.That(pipelines.Count(), Is.EqualTo(3)); var pipeline = pipelines.First(); Assert.That(pipeline.Name, Is.EqualTo("Shared")); }
public void Should_Load_Xml_For_Name_without_caring_about_case() { const string profilesXml = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" + "<Profiles><Profile name=\"test\">" + "<WhiteList>" + "<Pipeline>Pipeline1</Pipeline>" + "<Pipeline>Pipeline2</Pipeline>" + "</WhiteList>" + "<Statuses>" + "<Failed/></Statuses></Profile></Profiles>"; IFileLoader fakeFileLoader = new FakeFileLoader(profilesXml); var xmlProfileRetriever = new XmlProfileRetriever(fakeFileLoader); var profileXml = xmlProfileRetriever.GetProfileXml("Test"); Assert.That(profileXml.ToString(), Is.EqualTo(XElement.Parse("<Profile name=\"test\">" + "<WhiteList>" + "<Pipeline>Pipeline1</Pipeline>" + "<Pipeline>Pipeline2</Pipeline>" + "</WhiteList>" + "<Statuses><Failed/></Statuses>" + "</Profile>").ToString())); }
public void Should_Return_Null_for_NonExistant_Profile() { const string profilesXml = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><Profiles><Profile name=\"test\">" + "<WhiteList>" + "<Pipeline>Pipeline1</Pipeline>" + "<Pipeline>Pipeline2</Pipeline>" + "</WhiteList>" + "<Statuses><Failed/></Statuses>" + "</Profile></Profiles>"; IFileLoader fakeFileLoader = new FakeFileLoader(profilesXml); var xmlProfileRetriever = new XmlProfileRetriever(fakeFileLoader); var profileXml = xmlProfileRetriever.GetProfileXml("aaa"); Assert.That(profileXml, Is.Null); }
public void Should_Show_Passed_Count() { var expectedPipelines = new List<DisplayablePipeline> { new DisplayablePipeline("Shared", "bob"){Stages = new List<IStage>{new FailedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}}, new DisplayablePipeline("Shared2", "bob"){Stages = new List<IStage>{new PassedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}}, new DisplayablePipeline("Shared3", "bob"){Stages = new List<IStage>{new FailedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}}, new DisplayablePipeline("Shared4", "bob"){Stages = new List<IStage>{new PassedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}} }; const string ProfilesXmlFile = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><Profiles><Profile name=\"test\">" + "<WhiteList><Pipeline>Pipeline1</Pipeline><Pipeline>Pipeline2</Pipeline><Pipeline>Pipeline3</Pipeline><Pipeline>Pipeline4</Pipeline></WhiteList>" + "<Statuses><Failed/><Passed/></Statuses>" + "<ShowPassedCount>true</ShowPassedCount>" + "</Profile></Profiles>"; var fakeFileLoader = new FakeFileLoader(ProfilesXmlFile); IXmlProfileRetriever xmlProfileRetriever = new XmlProfileRetriever(fakeFileLoader); var homeController = new HomeController(new FakeDashboard(expectedPipelines), xmlProfileRetriever); var result = (ViewResult)homeController.Refresh("test"); var viewModel = (IndexViewModel)result.ViewData.Model; Assert.That(viewModel.ShowPassedCount, Is.EqualTo(true)); }
public void Index_Returns_Model_With_Pipeline_Groups_With_ShowName_Flag() { var expectedPipelines = new List<DisplayablePipeline> { new DisplayablePipeline("Pipeline1", "bob"){Stages = new List<IStage>{new FailedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}}, new DisplayablePipeline("Pipeline2", "bob"){Stages = new List<IStage>{new PassedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}}, new DisplayablePipeline("Pipeline3", "bob"){Stages = new List<IStage>{new FailedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}}, new DisplayablePipeline("Pipeline4", "bob"){Stages = new List<IStage>{new PassedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}} }; const string ProfilesXmlFile = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><Profiles><Profile name=\"test\">" + "<WhiteList>" + "<Group name=\"Group1\" showName=\"true\">" + "<Pipeline>Pipeline1</Pipeline>" + "<Pipeline>Pipeline2</Pipeline>" + "</Group>" + "<Group name=\"Group2\" showName=\"false\">" + "<Pipeline>Pipeline3</Pipeline>" + "<Pipeline>Pipeline4</Pipeline>" + "</Group>" + "<Group name=\"Group3\">" + "<Pipeline>Pipeline5</Pipeline>" + "<Pipeline>Pipeline6</Pipeline>" + "</Group>" + "</WhiteList>" + "<Statuses><Failed/><Passed/></Statuses>" + "</Profile></Profiles>"; var fakeFileLoader = new FakeFileLoader(ProfilesXmlFile); IXmlProfileRetriever xmlProfileRetriever = new XmlProfileRetriever(fakeFileLoader); var homeController = new HomeController(new FakeDashboard(expectedPipelines), xmlProfileRetriever); var result = (ViewResult)homeController.Index("test"); var viewModel = (IndexViewModel)result.ViewData.Model; Assert.That(viewModel.Groups.Count(), Is.EqualTo(3)); Assert.That(viewModel.Groups[0].ShowName, Is.True); Assert.That(viewModel.Groups[1].ShowName, Is.False); Assert.That(viewModel.Groups[2].ShowName, Is.True); }
public void Index_Returns_Model_With_Pipeline() { var expectedPipelines = new List<DisplayablePipeline> { new DisplayablePipeline("Shared", ""){Stages = new List<IStage>{new FailedStage("","",DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))}} }; const string ProfilesXmlFile = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><Profiles><Profile name=\"test\">" + "<WhiteList><Group><Pipeline>Shared</Pipeline></Group></WhiteList>" + "<Statuses><Failed/><Passed/></Statuses>" + "<ShowPassedCount>false</ShowPassedCount>" + "</Profile></Profiles>"; var fakeFileLoader = new FakeFileLoader(ProfilesXmlFile); IXmlProfileRetriever xmlProfileRetriever = new XmlProfileRetriever(fakeFileLoader); var homeController = new HomeController(new FakeDashboard(expectedPipelines), xmlProfileRetriever); var result = (ViewResult)homeController.Index(""); var viewModel = (IndexViewModel)result.ViewData.Model; Assert.That(viewModel.Pipelines.First().Name, Is.EqualTo("Shared")); }