@Override
 public void analyze(LogEntry logEntry) {
   String testClass = classMatch(logEntry.thread());
   if (testClass == null) {
     return;
   }
   TestState state = getOrCreate(testClass);
   if (state.started) {
     state.printStream.println(logEntry.prettyPrint());
     state.finished = testFinished(logEntry.message());
     if (state.finished) {
       endTest(testClass, state);
     }
   } else {
     String testMethod = extractTestMethodIfStarting(logEntry.message());
     if (state.started = testStarted(testMethod)) {
       init(testClass, testMethod, state);
       state.printStream.println(logEntry.prettyPrint());
     }
   }
 }