commit | 99fe7c3891c8a9600d9b568ff50f3e25863d6108 | [log] [tgz] |
---|---|---|
author | Paul Duffin <[email protected]> | Wed Mar 22 15:52:14 2017 +0000 |
committer | Paul Duffin <[email protected]> | Wed Mar 22 16:39:53 2017 +0000 |
tree | 949e76c140c6b5415b519eaf577c12dc8d704b14 | |
parent | ea07fbcef796fdacd3110b41eec7a6c6e55044fc [diff] |
Make sure that filters affect the Description JUnitParamsRunner caches the Description on first request but if that happens before applying a filter then the Description never gets updated. This fixes the problem by discarding the cached Description forcing it to be regenerated next time it is requested. Bug: 36074730 Test: run cts -a arm64-v8a -m CtsLibcoreTestCases -t libcore.java.net.InetAddressTest#test_isReachable_by_ICMP Change-Id: Ibc35c013c388f81fd5b69c553b167e3d11af6841
Parameterised tests that don't suck
@RunWith(JUnitParamsRunner.class) public class PersonTest { @Test @Parameters({"17, false", "22, true" }) public void personIsAdult(int age, boolean valid) throws Exception { assertThat(new Person(age).isAdult(), is(valid)); } }
See more examples
JUnitParams project adds a new runner to JUnit and provides much easier and readable parametrised tests for JUnit >=4.6.
Main differences to standard JUnit Parametrised runner:
JUnitParams is available as Maven artifact:
<dependency> <groupId>pl.pragmatists</groupId> <artifactId>JUnitParams</artifactId> <version>1.0.4</version> <scope>test</scope> </dependency>
If you want to see just one simple test class with all main ways to use JUnitParams see here: https://github.com/Pragmatists/junitparams/tree/master/src/test/java/junitparams/usage
You can also have a look at Wiki:Quickstart
Note: We are currently moving the project from Google Code to Github. Some information may still be accessible only at https://code.google.com/p/junitparams/