예제 #1
0
 private void initializeTest() {
   symbols.clear();
   scenarios.clear();
   testSummary.clear();
   allExpectations.clear();
   allInstructionResults.clear();
   allInstructions.clear();
   allTables.clear();
   exceptions.resetForNewTest();
 }
예제 #2
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));
    }
  }
예제 #3
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;
  }
예제 #4
0
 public ScenarioTable getScenario(String scenarioName) {
   return scenarios.get(scenarioName);
 }
예제 #5
0
 public void addScenario(String scenarioName, ScenarioTable scenarioTable) {
   scenarios.put(scenarioName, scenarioTable);
 }
예제 #6
0
 public void setSymbol(String symbolName, String value) {
   symbols.put(symbolName, value);
 }
예제 #7
0
 public String getSymbol(String symbolName) {
   return symbols.get(symbolName);
 }
예제 #8
0
 private void replaceExceptionWithExceptionLink(String resultKey) {
   Object result = instructionResults.get(resultKey);
   if (result instanceof String) replaceIfUnignoredException(resultKey, (String) result);
 }
예제 #9
0
 protected void replaceExceptionsWithLinks() {
   Set<String> resultKeys = instructionResults.keySet();
   for (String resultKey : resultKeys) replaceExceptionWithExceptionLink(resultKey);
 }