public void ExpandVariables_ExpandVariablesWhenExecuteInvoked_WithDifferentCaseNames() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new[] { "$(value1)", "$(buildNumber)", "$(TMp)" } }, { "Variables", new Dictionary <string, string> { { "Value1", "value1" } } }, { "IncludeBuildVariables", true }, { "IncludeEnvironmentVariables", true } }; var buildDetail = GetMockedIBuildDetail(); var invoker = new WorkflowInvoker(target); invoker.Extensions.Add(buildDetail.Object); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(3, ((IEnumerable <string>)actual["Result"]).Count(), "Expected 3 output parameter."); Assert.AreEqual("value1", ((IEnumerable <string>)actual["Result"]).ElementAt(0)); Assert.AreEqual(buildDetail.Object.BuildNumber, ((IEnumerable <string>)actual["Result"]).ElementAt(1)); Assert.AreEqual(Environment.GetEnvironmentVariable("TMP"), ((IEnumerable <string>)actual["Result"]).ElementAt(2)); }
public void ExpandVariables_ExpandUserVariablesWhenExecuteInvoked_WithUserVariableOverridingBuildVariable() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new[] { "My user var: $(BuildId)" } }, { "Variables", new Dictionary <string, string> { { "BuildId", "-1" } } }, { "IncludeBuildVariables", true } }; var buildDetail = GetMockedIBuildDetail(); var invoker = new WorkflowInvoker(target); invoker.Extensions.Add(buildDetail.Object); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable <string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My user var: -1", ((IEnumerable <string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ReturnsEmptyWhenExecuteInvoked_WithEmptyInput() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new string[0] } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.IsFalse(((IEnumerable <string>)actual["Result"]).Any()); }
public void ExpandVariables_ReturnsNullWhenExecuteInvoked_WithNullInput() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", null } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.IsNull(actual["Result"]); }
public void ExpandVariables_ReturnsNullWhenExecuteInvoked_WithNullInput() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", null } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.IsNull(actual["Result"]); }
public void ExpandVariables_ReturnsEmptyWhenExecuteInvoked_WithEmptyInput() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new string[0] } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.IsFalse(((IEnumerable<string>)actual["Result"]).Any()); }
public void ExpandVariables_DoNotExpandBuildVariablesWhenExecuteInvoked_WithIncludeBuildVariablesEqualsFalse() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new[] { "My build number: $(BuildNumber)" } } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable <string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My build number: $(BuildNumber)", ((IEnumerable <string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandEnvironmentVariablesWhenExecuteInvoked() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new[] { "My temp dir: $(TMP)" } }, { "IncludeEnvironmentVariables", true } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable <string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My temp dir: " + Environment.GetEnvironmentVariable("TMP"), ((IEnumerable <string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandVariablesWhenExecuteInvoked_WithVariableNameOnly() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new[] { "My user var: $(Value1)/$(Value2)" } }, { "Variables", new Dictionary<string, string> { { "Value1", "value1" }, { "Value2", "value2" } } } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable<string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My user var: value1/value2", ((IEnumerable<string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandVariablesWhenExecuteInvoked_WithVariableNameOnly() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new[] { "My user var: $(Value1)/$(Value2)" } }, { "Variables", new Dictionary <string, string> { { "Value1", "value1" }, { "Value2", "value2" } } } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable <string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My user var: value1/value2", ((IEnumerable <string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandBuildIdVariableWhenExecuteInvoked() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new[] { "$(BuildId)" } }, { "IncludeBuildVariables", true } }; var buildDetail = GetMockedIBuildDetail(); var invoker = new WorkflowInvoker(target); invoker.Extensions.Add(buildDetail.Object); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable <string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual(LinkingUtilities.DecodeUri(buildDetail.Object.Uri.ToString()).ToolSpecificId, ((IEnumerable <string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_DoNotExpandBuildAgentIdWhenExecuteInvokedOutsideAgentScope() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new[] { "$(BuildAgentId)" } }, { "IncludeBuildVariables", true } }; var buildDetail = GetMockedIBuildDetail(); var invoker = new WorkflowInvoker(target); invoker.Extensions.Add(buildDetail.Object); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable <string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual(string.Empty, ((IEnumerable <string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandUserVariablesWhenExecuteInvoked_WithUserVariableOverridingEnvironmentVariable() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary <string, object> { { "Inputs", new[] { "My user var: $(TMP)" } }, { "Variables", new Dictionary <string, string> { { "TMP", "[TEMP]" } } }, { "IncludeEnvironmentVariables", true } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable <string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My user var: [TEMP]", ((IEnumerable <string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandUserVariablesWhenExecuteInvoked_WithUserVariableOverridingBuildVariable() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new[] { "My user var: $(BuildId)" } }, { "Variables", new Dictionary<string, string> { { "BuildId", "-1" } } }, { "IncludeBuildVariables", true } }; var buildDetail = GetMockedIBuildDetail(); var invoker = new WorkflowInvoker(target); invoker.Extensions.Add(buildDetail.Object); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable<string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My user var: -1", ((IEnumerable<string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandVariablesWhenExecuteInvoked_WithDifferentCaseNames() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new[] { "$(value1)", "$(buildNumber)", "$(TMp)" } }, { "Variables", new Dictionary<string, string> { { "Value1", "value1" } } }, { "IncludeBuildVariables", true }, { "IncludeEnvironmentVariables", true } }; var buildDetail = GetMockedIBuildDetail(); var invoker = new WorkflowInvoker(target); invoker.Extensions.Add(buildDetail.Object); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(3, ((IEnumerable<string>)actual["Result"]).Count(), "Expected 3 output parameter."); Assert.AreEqual("value1", ((IEnumerable<string>)actual["Result"]).ElementAt(0)); Assert.AreEqual(buildDetail.Object.BuildNumber, ((IEnumerable<string>)actual["Result"]).ElementAt(1)); Assert.AreEqual(Environment.GetEnvironmentVariable("TMP"), ((IEnumerable<string>)actual["Result"]).ElementAt(2)); }
public void ExpandVariables_ExpandBuildAgentIdWhenExecuteInvokedInsideAgentScope() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new[] { "$(BuildAgentId)" } }, { "IncludeBuildVariables", true } }; var buildDetail = GetMockedIBuildDetail(); var buildAgent = GetMockedIBuildAgent(); var invoker = new WorkflowInvoker(target); invoker.Extensions.Add(buildDetail.Object); invoker.Extensions.Add(buildAgent.Object); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable<string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("5", ((IEnumerable<string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandBuildIdVariableWhenExecuteInvoked() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new[] { "$(BuildId)" } }, { "IncludeBuildVariables", true } }; var buildDetail = GetMockedIBuildDetail(); var invoker = new WorkflowInvoker(target); invoker.Extensions.Add(buildDetail.Object); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable<string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual(LinkingUtilities.DecodeUri(buildDetail.Object.Uri.ToString()).ToolSpecificId, ((IEnumerable<string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_DoNotExpandBuildVariablesWhenExecuteInvoked_WithIncludeBuildVariablesEqualsFalse() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new[] { "My build number: $(BuildNumber)" } } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable<string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My build number: $(BuildNumber)", ((IEnumerable<string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandEnvironmentVariablesWhenExecuteInvoked() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new[] { "My temp dir: $(TMP)" } }, { "IncludeEnvironmentVariables", true } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable<string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My temp dir: " + Environment.GetEnvironmentVariable("TMP"), ((IEnumerable<string>)actual["Result"]).ElementAt(0)); }
public void ExpandVariables_ExpandUserVariablesWhenExecuteInvoked_WithUserVariableOverridingEnvironmentVariable() { // arrange var target = new ExpandVariables(); var parameters = new Dictionary<string, object> { { "Inputs", new[] { "My user var: $(TMP)" } }, { "Variables", new Dictionary<string, string> { { "TMP", "[TEMP]" } } }, { "IncludeEnvironmentVariables", true } }; var invoker = new WorkflowInvoker(target); // act var actual = invoker.Invoke(parameters); // assert Assert.AreEqual(1, ((IEnumerable<string>)actual["Result"]).Count(), "Expected only one output parameter."); Assert.AreEqual("My user var: [TEMP]", ((IEnumerable<string>)actual["Result"]).ElementAt(0)); }