Example #1
0
  public boolean isIncluded(TestDescription description) {
    for (TestSelector testSelector : testSelectors) {
      if (testSelector.matches(description)) {
        return testSelector.isInclusive();
      }
    }

    return defaultIsInclusive;
  }
Example #2
0
 public TestSelectorList build() {
   // Default to being inclusive only if all selectors are *exclusive*.
   boolean defaultIsInclusive = true;
   for (TestSelector testSelector : testSelectors) {
     if (testSelector.isInclusive()) {
       defaultIsInclusive = false;
       break;
     }
   }
   return new TestSelectorList(testSelectors, defaultIsInclusive);
 }
Example #3
0
  public List<String> getExplanation() {
    List<String> lines = new ArrayList<>();
    for (TestSelector testSelector : testSelectors) {
      lines.add(testSelector.getExplanation());
    }

    // If the last selector matches everything, derive our default behavior from that test selector
    // and replace the last line of explanation.
    int lastIndex = testSelectors.size() - 1;
    TestSelector lastTestSelector = testSelectors.get(lastIndex);
    if (lastTestSelector.isMatchAnyClass() && lastTestSelector.isMatchAnyMethod()) {
      String lastLine = formatEverythingElseLine(lastTestSelector.isInclusive());
      lines.set(lastIndex, lastLine);
    } else {
      // Otherwise describe our default behavior.
      lines.add(formatEverythingElseLine(defaultIsInclusive));
    }
    return lines;
  }