Class TestRuleAdapter

java.lang.Object
com.carrotsearch.randomizedtesting.rules.TestRuleAdapter
All Implemented Interfaces:
org.junit.rules.TestRule
Direct Known Subclasses:
RequireAssertionsRule

public abstract class TestRuleAdapter extends Object implements org.junit.rules.TestRule
An abstract TestRule that guarantees the execution of afterAlways(java.util.List<java.lang.Throwable>) even if an exception has been thrown from delegate Statement. This is much like AfterClass or After annotations but can be used with RuleChain to guarantee the order of execution.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    Always called after the delegate Statement, even if an exception (or assumption failure) occurs.
    protected void
    Called only if the delegate Statement returned successfully.
    org.junit.runners.model.Statement
    apply(org.junit.runners.model.Statement s, org.junit.runner.Description d)
     
    protected void
    Always called before the delegate Statement.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • TestRuleAdapter

      public TestRuleAdapter()
  • Method Details

    • apply

      public org.junit.runners.model.Statement apply(org.junit.runners.model.Statement s, org.junit.runner.Description d)
      Specified by:
      apply in interface org.junit.rules.TestRule
    • before

      protected void before() throws Throwable
      Always called before the delegate Statement.
      Throws:
      Throwable
    • afterAlways

      protected void afterAlways(List<Throwable> errors) throws Throwable
      Always called after the delegate Statement, even if an exception (or assumption failure) occurs. Any exceptions thrown from the body of this method will be chained using MultipleFailureException.
      Parameters:
      errors - A list of errors received so far. The list is modifiable although should only be extended with new potential exceptions.
      Throws:
      Throwable
    • afterIfSuccessful

      protected void afterIfSuccessful() throws Throwable
      Called only if the delegate Statement returned successfully.
      Throws:
      Throwable