示例#1
0
        static (int, string, string) Run(Func <int> fn, TextReader stdIn)
        {
            using (Swap.ConsoleIn(stdIn))
                using (var stdOutWriter = new StringWriter())
                    using (Swap.ConsoleOut(stdOutWriter))
                        using (var stdErrorWriter = new StringWriter())
                            using (Swap.ConsoleError(stdErrorWriter))
                            {
                                int exitCode = fn();

                                string stdOut   = stdOutWriter.ToString();
                                string stdError = stdErrorWriter.ToString();
                                return(exitCode, stdOut, stdError);
                            }
        }
示例#2
0
 public static IDisposable ConsoleError() =>
 Swap.ConsoleError(TextWriter.Null);