org.junit.runner.manipulation.Filter类的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(6.8k)|赞(0)|评价(0)|浏览(216)

本文整理了Java中org.junit.runner.manipulation.Filter类的一些代码示例,展示了Filter类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Filter类的具体详情如下:
包路径:org.junit.runner.manipulation.Filter
类名称:Filter

Filter介绍

[英]The canonical case of filtering is when you want to run a single test method in a class. Rather than introduce runner API just for that one case, JUnit provides a general filtering mechanism. If you want to filter the tests to be run, extend Filter and apply an instance of your filter to the org.junit.runner.Request before running it (see org.junit.runner.JUnitCore#run(Request). Alternatively, apply a Filter to a org.junit.runner.Runner before running tests (for example, in conjunction with org.junit.runner.RunWith.
[中]过滤的典型情况是希望在类中运行单个测试方法。JUnit提供了一种通用的过滤机制,而不是仅仅针对这种情况引入runner API。如果要筛选要运行的测试,请扩展Filter,并将筛选实例应用于组织。朱尼特。跑步者在运行之前请求(请参阅org.junit.runner.JUnitCore#run(请求)。或者,对组织应用Filter。朱尼特。跑步者运行测试之前运行Runner(例如,与org.junit.Runner.RunWith结合使用)。

代码示例

代码示例来源:origin: junit-team/junit4

public void filter(Filter filter) throws NoTestsRemainException {
  for (Iterator<Method> iter = testMethods.iterator(); iter.hasNext(); ) {
    Method method = iter.next();
    if (!filter.shouldRun(methodDescription(method))) {
      iter.remove();
    }
  }
  if (testMethods.isEmpty()) {
    throw new NoTestsRemainException();
  }
}

代码示例来源:origin: junit-team/junit4

public void filter(Filter filter) throws NoTestsRemainException {
  childrenLock.lock();
  try {
    List<T> children = new ArrayList<T>(getFilteredChildren());
    for (Iterator<T> iter = children.iterator(); iter.hasNext(); ) {
      T each = iter.next();
      if (shouldRun(filter, each)) {
        try {
          filter.apply(each);
        } catch (NoTestsRemainException e) {
          iter.remove();
        }
      } else {
        iter.remove();
      }
    }
    filteredChildren = Collections.unmodifiableList(children);
    if (filteredChildren.isEmpty()) {
      throw new NoTestsRemainException();
    }
  } finally {
    childrenLock.unlock();
  }
}

代码示例来源:origin: google/j2objc

@Override
public boolean shouldRun(Description description) {
  Matcher filterDescriptionMatcher = DESCRIPTION_PATTERN.matcher(filter.describe());
  if (!filterDescriptionMatcher.find()) {
    return filter.shouldRun(description);
      return filter.shouldRun(description);

代码示例来源:origin: junit-team/junit4

@Override
  public Runner getRunner() {
    try {
      Runner runner = request.getRunner();
      fFilter.apply(runner);
      return runner;
    } catch (NoTestsRemainException e) {
      return new ErrorReportingRunner(Filter.class, new Exception(String
          .format("No tests found matching %s from %s", fFilter
              .describe(), request.toString())));
    }
  }
}

代码示例来源:origin: konsoletyper/teavm

@Override
public void filter(Filter filter) throws NoTestsRemainException {
  for (Iterator<Method> iterator = getFilteredChildren().iterator(); iterator.hasNext();) {
    Method method = iterator.next();
    if (filter.shouldRun(describeChild(method))) {
      filter.apply(method);
    } else {
      iterator.remove();
    }
  }
}

代码示例来源:origin: junit-team/junit4

@Override
public boolean shouldRun(Description description) {
  return first.shouldRun(description)
      && second.shouldRun(description);
}

代码示例来源:origin: mp911de/microbenchmark-runner

@Override
public void filter(Filter filter) throws NoTestsRemainException {
  synchronized (childrenLock) {
    List<BenchmarkDescriptor> children = new ArrayList<>(getFilteredChildren());
    List<BenchmarkDescriptor> filtered = children.stream().filter(it -> {
      if (filter.shouldRun(describeChild(it))) {
        try {
          filter.apply(it);
          return true;
        } catch (NoTestsRemainException e) {
          return false;
        }
      }
      return false;
    }).collect(Collectors.toList());
    if (filtered.isEmpty()) {
      throw new NoTestsRemainException();
    }
    filteredChildren = filtered;
  }
}

代码示例来源:origin: junit-team/junit4

@Override
  public String describe() {
    return first.describe() + " and " + second.describe();
  }
};

代码示例来源:origin: junit-team/junit4

public void filter(Filter filter) throws NoTestsRemainException {
  filter.apply(fRunner);
}

代码示例来源:origin: junit-team/junit4

/**
 * Returns a Request that only runs tests whose {@link Description}
 * matches the given description.
 *
 * <p>Returns an empty {@code Request} if {@code desiredDescription} is not a single test and filters all but the single
 * test if {@code desiredDescription} is a single test.</p>
 *
 * @param desiredDescription {@code Description} of those tests that should be run
 * @return the filtered Request
 */
public Request filterWith(Description desiredDescription) {
  return filterWith(Filter.matchMethodDescription(desiredDescription));
}

代码示例来源:origin: com.uphyca/android-junit4

testCaseClasses.add(desc.getTestClass());
  if (desc.isTest() || desc.isSuite()) {
    Filter newFilter = (desc.getMethodName() != null) ? Filter.matchMethodDescription(desc) : Filters.matchSuiteDescription(desc);
    if (filters == null) {
      filters = newFilter;
  filters = requirements;
} else {
  filters = filters.intersect(requirements);

代码示例来源:origin: google/j2objc

@Override
public boolean shouldRun(Description description) {
  return first.shouldRun(description)
      && second.shouldRun(description);
}

代码示例来源:origin: org.seasar.container/s2-tiger

public void filter(final Filter filter) throws NoTestsRemainException {
  for (final Iterator<Runner> iter = fRunners.iterator(); iter
      .hasNext();) {
    final Runner runner = iter.next();
    if (filter.shouldRun(runner.getDescription()))
      filter.apply(runner);
    else
      iter.remove();
  }
}

代码示例来源:origin: google/j2objc

@Override
  public Runner getRunner() {
    try {
      Runner runner = fRequest.getRunner();
      fFilter.apply(runner);
      return runner;
    } catch (NoTestsRemainException e) {
      return new ErrorReportingRunner(Filter.class, new Exception(String
          .format("No tests found matching %s from %s", fFilter
              .describe(), fRequest.toString())));
    }
  }
}

代码示例来源:origin: google/j2objc

@Override
  public String describe() {
    return filter.describe();
  }
}

代码示例来源:origin: google/j2objc

public void filter(Filter filter) throws NoTestsRemainException {
  filter.apply(fRunner);
}

代码示例来源:origin: google/j2objc

/**
 * Returns a Request that only runs contains tests whose {@link Description}
 * equals <code>desiredDescription</code>
 *
 * @param desiredDescription {@link Description} of those tests that should be run
 * @return the filtered Request
 */
public Request filterWith(final Description desiredDescription) {
  return filterWith(Filter.matchMethodDescription(desiredDescription));
}

代码示例来源:origin: esmasui/AndroidJUnit4

testCaseClasses.add(desc.getTestClass());
  if (desc.isTest() || desc.isSuite()) {
    Filter newFilter = (desc.getMethodName() != null) ? Filter.matchMethodDescription(desc) : Filters.matchSuiteDescription(desc);
    if (filters == null) {
      filters = newFilter;
  filters = requirements;
} else {
  filters = filters.intersect(requirements);

代码示例来源:origin: google/j2objc

public void filter(Filter filter) throws NoTestsRemainException {
  for (Iterator<Method> iter = fTestMethods.iterator(); iter.hasNext(); ) {
    Method method = iter.next();
    if (!filter.shouldRun(methodDescription(method))) {
      iter.remove();
    }
  }
  if (fTestMethods.isEmpty()) {
    throw new NoTestsRemainException();
  }
}

代码示例来源:origin: google/j2objc

public void filter(Filter filter) throws NoTestsRemainException {
  for (Iterator<T> iter = getFilteredChildren().iterator(); iter.hasNext(); ) {
    T each = iter.next();
    if (shouldRun(filter, each)) {
      try {
        filter.apply(each);
      } catch (NoTestsRemainException e) {
        iter.remove();
      }
    } else {
      iter.remove();
    }
  }
  if (getFilteredChildren().isEmpty()) {
    throw new NoTestsRemainException();
  }
}

相关文章

微信公众号

最新文章

更多