test_class.file: cli/src/test/java/com/github/olivergondza/dumpling/cli/ThreaddumpCommandTest.java
test_class.identifier: ThreaddumpCommandTest
test_class.superclass: extends AbstractCliTest
test_case.body: @Test
      public void cli() throws Exception {
          run("threaddump", "--in", "threaddump:" + Util.asFile(Util.resource("jstack/deadlock.log")).getAbsolutePath());
          assertThat(this, succeeded());
          assertThat(err.toString(), equalTo(""));
  
          String parsed = out.toString();
          stdin(parsed);
          run("threaddump", "--in", "threaddump:-");
          assertThat(this, succeeded());
          String reparsed = out.toString();
  
          assertThat(parsed, equalTo(reparsed));
          assertThat(parsed, containsString("\"Handling GET /hudson/job/some_job/ : ajp-127.0.0.1-8009-133\" daemon prio=10 tid=0x2ad443486800 nid=18245"));
      }
test_case.class_method_signature: ThreaddumpCommandTest.cli()
test_case.full_signature: @Test public void cli()
test_case.identifier: cli
test_case.invocations: run getAbsolutePath asFile resource assertThat succeeded assertThat toString equalTo toString stdin run assertThat succeeded toString assertThat equalTo assertThat containsString
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void cli()
focal_class.declarator: runtime
focal_class.modifier: @Option(name = "-i", aliases = {"--in"}, usage = "Input for process runtime")
      private
focal_class.original_string: @Option(name = "-i", aliases = {"--in"}, usage = "Input for process runtime")
      private ProcessRuntime<?, ?, ?> runtime;
focal_class.type: ProcessRuntime<?, ?, ?>
focal_class.var_name: runtime
focal_class.declarator: porcelain = false
focal_class.modifier: @Option(name = "-p", aliases = {"--porcelain"}, usage = "Show in a format designed for machine consumption")
      private
focal_class.original_string: @Option(name = "-p", aliases = {"--porcelain"}, usage = "Show in a format designed for machine consumption")
      private boolean porcelain = false;
focal_class.type: boolean
focal_class.var_name: porcelain
focal_class.file: cli/src/main/java/com/github/olivergondza/dumpling/cli/ThreaddumpCommand.java
focal_class.identifier: ThreaddumpCommand
focal_class.interfaces: implements CliCommand
focal_class.class_method_signature: ThreaddumpCommand.getName()
focal_class.full_signature: @Override public String getName()
focal_class.identifier: getName
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getName()
focal_class.class_method_signature: ThreaddumpCommand.getDescription()
focal_class.full_signature: @Override public String getDescription()
focal_class.identifier: getDescription
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getDescription()
focal_class.class_method_signature: ThreaddumpCommand.run(ProcessStream process)
focal_class.full_signature: @Override public int run(ProcessStream process)
focal_class.identifier: run
focal_class.modifiers: @Override public
focal_class.parameters: (ProcessStream process)
focal_class.return: int
focal_class.signature: int run(ProcessStream process)
focal_method.body: @Override
      public int run(ProcessStream process) throws CmdLineException {
          runtime.toString(process.out(), porcelain ? Mode.MACHINE : Mode.HUMAN);
          return 0;
      }
focal_method.class_method_signature: ThreaddumpCommand.run(ProcessStream process)
focal_method.full_signature: @Override public int run(ProcessStream process)
focal_method.identifier: run
focal_method.invocations: toString out
focal_method.modifiers: @Override public
focal_method.parameters: (ProcessStream process)
focal_method.return: int
focal_method.signature: int run(ProcessStream process)