I have written a few MSBuild custom tasks that work well and are use in our CruiseControl.NET build process.
I am modifying one, and wish to unit test it by calling the Task's Execute() method.
However, if it encounters a line containing
Log.LogMessage("some message here");
You need to set the .BuildEngine property of the custom task you are calling.
You can set it to the same BuildEngine your current task is using to include the output seamlessly.
Task myCustomTask = new CustomTask(); myCustomTask.BuildEngine = this.BuildEngine; myCustomTask.Execute();