public void Setting_the_build_configuration_details_in_the_configuration() { // Given string[] expectedConfigurations = new string[] { "Demo_A", "Hemo_Matt", "Test_XYZ" }; var configuration = CreateConfiguration(); CreateMockFactory(); foreach (var configurationId in expectedConfigurations) { configuration.Add(new InformationRadiatorItemConfigurationField() { ID = "BuildConfiguration", Value = configurationId }); } // When var target = new TeamCityPresenter(configuration); // Then foreach (var configurationId in expectedConfigurations) { Assert.IsTrue(target.Configurations.Any(s => s == configurationId)); } _mockServer.VerifyAll(); }
private void Reading_the_build_status_of_a_single_XYZ_build_configuration( string expectedConfiguration, string expectedName, Model.BuildStatus serverStatus, BuildStatus expectedStatus) { // Given var configuration = CreateConfiguration(); CreateMockFactory(); configuration.Add(new InformationRadiatorItemConfigurationField() { ID = "BuildConfiguration", Value = expectedConfiguration }); var target = new TeamCityPresenter(configuration); string actualConfiguration = null; BuildStatus actualStatus = BuildStatus.Unknown; string actualName = null; target.BuildStatusUpdate += (sender, e) => { actualConfiguration = e.BuildConfiguration; actualStatus = e.Status; actualName = e.Name; }; _mockServer.Setup(m => m.ReadBuildStatusAsync(expectedConfiguration)); // When _mockTimer.Raise(m => m.Tick += null, EventArgs.Empty); // Then // All calls to the server should be done by now _mockServer.VerifyAll(); // When // Fake the server returning the build status _mockServer.Raise(m => m.ReadBuildStatusComplete += null, new TeamCity.Model.ReadBuildStatusCompleteEventArgs( serverStatus, expectedConfiguration, expectedName)); Assert.AreEqual((double)30000, _factory._interval, (double)0.1); Assert.AreEqual(expectedConfiguration, actualConfiguration); Assert.AreEqual(expectedStatus, actualStatus); Assert.AreEqual(expectedName, actualName); _mockTimer.VerifyAll(); }
public void Setting_to_not_use_the_default_branch_in_the_build_configuration() { // Given var configuration = CreateConfiguration(); CreateMockFactory(useDefaultBranch: false); configuration.Add(new InformationRadiatorItemConfigurationField() { ID = "OnlyDefaultBranch", Value = "false" }); // When var target = new TeamCityPresenter(configuration); // Then _mockServer.VerifyAll(); }
public void No_server_and_login_details_in_the_configuration() { // Given string expectedHostName = "localhost"; string expectedUserName = "******"; string expectedPassword = "******"; var configuration = new InformationRadiatorItemConfiguration(); CreateMockFactory(); // When var target = new TeamCityPresenter(configuration); // Then Assert.AreEqual(expectedHostName, _factory._hostName); Assert.AreEqual(expectedUserName, _factory._userName); Assert.AreEqual(expectedPassword, _factory._password); _mockServer.VerifyAll(); }
public void Setting_the_server_and_login_details_via_the_configuration() { // Given string expectedHostName = "Gladys"; string expectedUserName = "******"; string expectedPassword = "******"; var configuration = CreateConfiguration(expectedHostName, expectedUserName, expectedPassword); CreateMockFactory(); // When var target = new TeamCityPresenter(configuration); // Then Assert.AreEqual(expectedHostName, _factory._hostName); Assert.AreEqual(expectedUserName, _factory._userName); Assert.AreEqual(expectedPassword, _factory._password); _mockServer.VerifyAll(); }
private void Reading_the_build_status_of_a_multiple_build_configuration( string[] expectedConfigurations, string[] expectedNames, Model.BuildStatus[] serverStatus, BuildStatus[] expectedStatus, Exception[] throwException = null) { // Given var configuration = CreateConfiguration(); CreateMockFactory(); foreach (var config in expectedConfigurations) { configuration.Add(new InformationRadiatorItemConfigurationField() { ID = "BuildConfiguration", Value = config }); } var target = new TeamCityPresenter(configuration); string actualConfiguration = null; BuildStatus actualStatus = BuildStatus.Unknown; string actualName = null; target.BuildStatusUpdate += (sender, e) => { actualConfiguration = e.BuildConfiguration; actualStatus = e.Status; actualName = e.Name; }; foreach (var config in expectedConfigurations) { _mockServer.Setup(m => m.ReadBuildStatusAsync(config)); } // When _mockTimer.Raise(m => m.Tick += null, EventArgs.Empty); // Then // All calls to the server should be done by now _mockServer.VerifyAll(); // When // Fake the server returning the build status for (int i = 0; i < expectedConfigurations.Length; i++) { actualConfiguration = null; actualStatus = BuildStatus.Unknown; if (throwException == null || throwException[i] == null) { _mockServer.Raise(m => m.ReadBuildStatusComplete += null, new TeamCity.Model.ReadBuildStatusCompleteEventArgs( serverStatus[i], expectedConfigurations[i], expectedNames[i])); } else { _mockServer.Raise(m => m.ReadBuildStatusError += null, new TeamCity.Model.ReadBuildStatusErrorEventArgs( throwException[i], expectedConfigurations[i])); } Assert.AreEqual(expectedStatus[i], actualStatus); Assert.AreEqual(expectedConfigurations[i], actualConfiguration); Assert.AreEqual(expectedNames[i], actualName); } _mockTimer.VerifyAll(); }