From 3e6fa71641d0ce469939cb755894fa5f07b78e1e Mon Sep 17 00:00:00 2001 From: Inga Lovinde <52715130+inga-lovinde@users.noreply.github.com> Date: Tue, 18 Mar 2014 13:25:20 +0400 Subject: [PATCH] Fixed vulnerability Unit tests output (e.g. Console.WriteLine in test method) was passed unchanged to dotnetbuilderwrapper (that was supposed to receive serialized report only) --- DotNetBuilder/Compiler.cs | 1 - DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj | 1 + DotNetBuilder/NUnitTester.cs | 1 + DotNetBuilder/Program.cs | 4 +++- DotNetBuilder/StubWriter.cs | 13 +++++++++++++ 5 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 DotNetBuilder/StubWriter.cs diff --git a/DotNetBuilder/Compiler.cs b/DotNetBuilder/Compiler.cs index c2fa05c..778611c 100644 --- a/DotNetBuilder/Compiler.cs +++ b/DotNetBuilder/Compiler.cs @@ -61,7 +61,6 @@ namespace MicroBuildServer.DotNetBuilder private string GetLine(string format, params object[] args) { var result = new string('\t', indent) + string.Format(format, args); - //Console.WriteLine(result); return result; } } diff --git a/DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj b/DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj index ae701da..03b8db7 100644 --- a/DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj +++ b/DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj @@ -94,6 +94,7 @@ + diff --git a/DotNetBuilder/NUnitTester.cs b/DotNetBuilder/NUnitTester.cs index 3c5ffbf..8af1579 100644 --- a/DotNetBuilder/NUnitTester.cs +++ b/DotNetBuilder/NUnitTester.cs @@ -143,6 +143,7 @@ namespace MicroBuildServer.DotNetBuilder public void DoTest() { + Console.SetOut(new StubWriter()); var listener = new Listener(); CoreExtensions.Host.InitializeService(); var package = new TestPackage(TestLibraryPath); diff --git a/DotNetBuilder/Program.cs b/DotNetBuilder/Program.cs index 9e66639..8d762da 100644 --- a/DotNetBuilder/Program.cs +++ b/DotNetBuilder/Program.cs @@ -35,8 +35,10 @@ namespace MicroBuildServer.DotNetBuilder static void Main(string[] args) { var input = Console.In.ReadToEnd(); + var outWriter = Console.Out; + Console.SetOut(new StubWriter()); var result = Process(input, args); - Console.Write(JsonConvert.SerializeObject(result, Formatting.Indented)); + outWriter.Write(JsonConvert.SerializeObject(result, Formatting.Indented)); } } } diff --git a/DotNetBuilder/StubWriter.cs b/DotNetBuilder/StubWriter.cs new file mode 100644 index 0000000..3744e8b --- /dev/null +++ b/DotNetBuilder/StubWriter.cs @@ -0,0 +1,13 @@ +using System.IO; +using System.Text; + +namespace MicroBuildServer.DotNetBuilder +{ + class StubWriter : TextWriter + { + public override Encoding Encoding + { + get { return Encoding.Default; } + } + } +}