diff options
Diffstat (limited to 'junit4/doc/ReleaseNotes4.10.txt')
-rw-r--r-- | junit4/doc/ReleaseNotes4.10.txt | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/junit4/doc/ReleaseNotes4.10.txt b/junit4/doc/ReleaseNotes4.10.txt new file mode 100644 index 0000000..ccf8625 --- /dev/null +++ b/junit4/doc/ReleaseNotes4.10.txt @@ -0,0 +1,84 @@ +## Summary of Changes in version 4.10 ## + +Thanks to a full cast of contributors of bug fixes and new features. + +A full summary of commits between 4.9 and 4.10 is on [github](https://github.com/KentBeck/junit/compare/r4.9...4.10) + +### junit-dep has correct contents ### + +junit-dep-4.9.jar incorrectly contained hamcrest classes, which could lead to version conflicts in projects that depend on hamcrest directly. This is fixed in 4.10 [@dsaff, closing gh-309] + +### RuleChain ### + +The RuleChain rule allows ordering of TestRules: + + public static class UseRuleChain { + @Rule + public TestRule chain= RuleChain + .outerRule(new LoggingRule("outer rule") + .around(new LoggingRule("middle rule") + .around(new LoggingRule("inner rule"); + + @Test + public void example() { + assertTrue(true); + } + } + +writes the log + + starting outer rule + starting middle rule + starting inner rule + finished inner rule + finished middle rule + finished outer rule + +### TemporaryFolder ### + +- `TemporaryFolder#newFolder(String... folderNames)` creates recursively deep temporary folders + [@rodolfoliviero, closing gh-283] +- `TemporaryFolder#newFile()` creates a randomly named new file, and `#newFolder()` creates a randomly named new folder + [@Daniel Rothmaler, closing gh-299] + +### Theories ### + +The `Theories` runner does not anticipate theory parameters that have generic +types, as reported by github#64. Fixing this won't happen until `Theories` is +moved to junit-contrib. In anticipation of this, 4.9.1 adds some of the +necessary machinery to the runner classes, and deprecates a method that only +the `Theories` runner uses, `FrameworkMethod`#producesType(). +The Common Public License that JUnit is released under is now included +in the source repository. + +Thanks to `@pholser` for identifying a potential resolution for github#64 +and initiating work on it. + +### Bug fixes ### + +- Built-in Rules implementations + - TemporaryFolder should not create files in the current working directory if applying the rule fails + [@orfjackal, fixing gh-278] + - TestWatcher and TestWatchman should not call failed for AssumptionViolatedExceptions + [@stefanbirkner, fixing gh-296] +- Javadoc bugs + - Assert documentation [@stefanbirkner, fixing gh-134] + - ClassRule [@stefanbirkner, fixing gh-254] + - Parameterized [@stefanbirkner, fixing gh-89] + - Parameterized, again [@orfjackal, fixing gh-285] +- Miscellaneous + - Useless code in RunAfters [@stefanbirkner, fixing gh-289] + - Parameterized test classes should be able to have `@Category` annotations + [@dsaff, fixing gh-291] + - Error count should be initialized in junit.tests.framework.TestListenerTest [@stefanbirkner, fixing gh-225] + - AssertionFailedError constructor shouldn't call super with null message [@stefanbirkner, fixing gh-318] + - Clearer error message for non-static inner test classes [@stefanbirkner, fixing gh-42] + +### Minor changes ### + +- Description, Result and Failure are Serializable [@ephox-rob, closing gh-101] +- FailOnTimeout is reusable, allowing for retrying Rules [@stefanbirkner, closing gh-265] +- New `ErrorCollector.checkThat` overload, that allows you to specify a reason [@drothmaler, closing gh-300] + + + |