示例#1
0
  private void processException(String resultKey, String resultString) {
    testSummary.exceptions++;
    boolean isStopTestException = resultString.contains(SlimServer.EXCEPTION_STOP_TEST_TAG);
    if (isStopTestException) {
      exceptions.setStopTestCalled();
    }

    Matcher exceptionMessageMatcher = exceptionMessagePattern.matcher(resultString);
    if (exceptionMessageMatcher.find()) {
      String prefix = (isStopTestException) ? MESSAGE_FAIL : MESSAGE_ERROR;
      String exceptionMessage = exceptionMessageMatcher.group(1);
      instructionResults.put(resultKey, prefix + translateExceptionMessage(exceptionMessage));
    } else {
      exceptions.addException(resultKey, resultString);
      instructionResults.put(resultKey, exceptionResult(resultKey));
    }
  }
示例#2
0
 private void evaluateTable(SlimTable table) {
   try {
     table.evaluateReturnValues(instructionResults);
     testSummary.add(table.getTestSummary());
   } catch (Throwable e) {
     exceptions.addException("ABORT", exceptionToString(e));
     exceptionOccurred(e);
   }
 }
示例#3
0
 protected void evaluateExpectations() {
   for (SlimTable.Expectation e : expectations) {
     try {
       e.evaluateExpectation(instructionResults);
     } catch (Throwable ex) {
       exceptions.addException("ABORT", exceptionToString(ex));
       exceptionOccurred(ex);
     }
   }
 }
示例#4
0
 private void initializeTest() {
   symbols.clear();
   scenarios.clear();
   testSummary.clear();
   allExpectations.clear();
   allInstructionResults.clear();
   allInstructions.clear();
   allTables.clear();
   exceptions.resetForNewTest();
 }
示例#5
0
  private String processTablesAndGetHtml(
      List<SlimTable> tables, SlimTable startWithTable, SlimTable nextTable) throws Exception {
    expectations.clear();

    testTables = tables;
    instructions = createInstructions(tables);
    if (!exceptions.stopTestCalled()) {
      instructionResults = slimClient.invokeAndGetResponse(instructions);
    }
    String html = createHtmlResults(startWithTable, nextTable);
    acceptOutputFirst(html);

    // update all lists
    allExpectations.addAll(expectations);
    allInstructions.addAll(instructions);
    allInstructionResults.putAll(instructionResults);

    return html;
  }