diff options
Diffstat (limited to 'junit4/src/test/java/org/junit/tests/experimental/rules/ExternalResourceRuleTest.java')
-rw-r--r-- | junit4/src/test/java/org/junit/tests/experimental/rules/ExternalResourceRuleTest.java | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/junit4/src/test/java/org/junit/tests/experimental/rules/ExternalResourceRuleTest.java b/junit4/src/test/java/org/junit/tests/experimental/rules/ExternalResourceRuleTest.java new file mode 100644 index 0000000..48cbeb9 --- /dev/null +++ b/junit4/src/test/java/org/junit/tests/experimental/rules/ExternalResourceRuleTest.java @@ -0,0 +1,37 @@ +package org.junit.tests.experimental.rules; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertThat; +import static org.junit.experimental.results.PrintableResult.testResult; +import static org.junit.experimental.results.ResultMatchers.isSuccessful; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.ExternalResource; + +public class ExternalResourceRuleTest { + private static String callSequence; + + public static class UsesExternalResource { + @Rule public ExternalResource resource = new ExternalResource() { + @Override + protected void before() throws Throwable { + callSequence += "before "; + }; + + @Override + protected void after() { + callSequence += "after "; + }; + }; + + @Test public void testFoo() { + callSequence += "test "; + } + } + + @Test public void externalResourceGeneratesCorrectSequence() { + callSequence= ""; + assertThat(testResult(UsesExternalResource.class), isSuccessful()); + assertEquals("before test after ", callSequence); + } +} |