public void ShouldGenerateCommandLineParametersFromTasks() { var finder = new Mock <IParameterFinder>(); var task1 = new Mock <IObsoleteTask>().Object; var task2 = new Mock <IObsoleteTask>().Object; var typeParsers = new Mock <ITypeParsers>().Object; var param1 = new FakeParameter { Name = "name1", GeneratedValue = "/name1:value1" }; var param2 = new FakeParameter { Name = "name2", GeneratedValue = "/name2:value2" }; var param3 = new FakeParameter { Name = "name3", GeneratedValue = @"""/name3:value 3""" }; finder.Setup(f => f.FindParametersInTask(task1)).Returns(new[] { param1, param2 }); finder.Setup(f => f.FindParametersInTask(task2)).Returns(new[] { param1, param3 }); var generator = new CommandLineTasksParametersGenerator(finder.Object, typeParsers); FakeParameter param2Override = new FakeParameter { Name = "name2", GeneratedValue = "/name2:anothervalue2" }; FakeParameter notUsedParameterOverride = new FakeParameter { Name = "notused", GeneratedValue = "/notused:notusedvalue" }; var args = generator.GenerateCommandLineParametersForTasks(new[] { param1, param2, param3 }, new [] { param2Override, notUsedParameterOverride }); Assert.That(args, Is.EqualTo(@"/name1:value1 /name2:anothervalue2 ""/name3:value 3"" /notused:notusedvalue")); }
public void ShouldGenerateCommandLineParametersFromTasks() { var finder = new Mock<IParameterFinder>(); var task1 = new Mock<ITask>().Object; var task2 = new Mock<ITask>().Object; var typeParsers = new Mock<ITypeParsers>().Object; var param1 = new FakeParameter {Name = "name1", GeneratedValue = "/name1:value1"}; var param2 = new FakeParameter {Name = "name2", GeneratedValue = "/name2:value2"}; var param3 = new FakeParameter {Name = "name3", GeneratedValue = @"""/name3:value 3"""}; finder.Setup(f => f.FindParametersInTask(task1)).Returns(new[] {param1, param2}); finder.Setup(f => f.FindParametersInTask(task2)).Returns(new[] {param1, param3}); var generator = new CommandLineTasksParametersGenerator(finder.Object, typeParsers); FakeParameter param2Override = new FakeParameter {Name = "name2", GeneratedValue = "/name2:anothervalue2"}; FakeParameter notUsedParameterOverride = new FakeParameter {Name = "notused", GeneratedValue = "/notused:notusedvalue"}; var args = generator.GenerateCommandLineParametersForTasks(new[] {param1, param2, param3}, new [] {param2Override, notUsedParameterOverride}); Assert.That(args, Is.EqualTo(@"/name1:value1 /name2:anothervalue2 ""/name3:value 3"" /notused:notusedvalue")); }