Skip to content
Snippets Groups Projects
Select Git revision
  • b6abba86d33e1fc124c3f0eb99aebf9e5dcc4ffe
  • master default protected
2 results

Main.java

Blame
  • Forked from DAS Shantanu / Prog2Aix-tp3
    Source project has a limited visibility.
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    StandardOutputSandbox.java 706 B
    import java.io.ByteArrayOutputStream;
    import java.io.OutputStream;
    import java.io.PrintStream;
    
    
    public class StandardOutputSandbox implements Runnable {
      static String NEW_LINE = System.getProperty("line.separator");
      private final Runnable runnable;
      private OutputStream outputStream;
    
      StandardOutputSandbox(Runnable runnable) {
        this.runnable = runnable;
      }
    
      public void run(){
        outputStream = new ByteArrayOutputStream();
        PrintStream printStream = new PrintStream(outputStream);
        System.setOut(printStream);
        runnable.run();
        PrintStream originalOut = System.out;
        System.setOut(originalOut);
      }
    
      String getProducedOutput() {
        return outputStream.toString();
      }
    }