| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="pl"> |
| <head> |
| <!-- Generated by javadoc (1.8.0) on Mon Jul 28 12:08:59 CEST 2014 --> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>JUnitParamsRunner (JUnitParams 1.0.3-SNAPSHOT API)</title> |
| <meta name="date" content="2014-07-28"> |
| <link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> |
| <script type="text/javascript" src="../script.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="JUnitParamsRunner (JUnitParams 1.0.3-SNAPSHOT API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":9,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a name="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/JUnitParamsRunner.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../index-all.html">Index</a></li> |
| <li><a href="../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../junitparams/FileParameters.html" title="annotation in junitparams"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../junitparams/Parameters.html" title="annotation in junitparams"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../index.html?junitparams/JUnitParamsRunner.html" target="_top">Frames</a></li> |
| <li><a href="JUnitParamsRunner.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle">junitparams</div> |
| <h2 title="Class JUnitParamsRunner" class="title">Class JUnitParamsRunner</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.junit.runner.Runner</li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.junit.runners.ParentRunner<org.junit.runners.model.FrameworkMethod></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.junit.runners.BlockJUnit4ClassRunner</li> |
| <li> |
| <ul class="inheritance"> |
| <li>junitparams.JUnitParamsRunner</li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <dl> |
| <dt>All Implemented Interfaces:</dt> |
| <dd>org.junit.runner.Describable, org.junit.runner.manipulation.Filterable, org.junit.runner.manipulation.Sortable</dd> |
| </dl> |
| <hr> |
| <br> |
| <pre>public class <span class="typeNameLabel">JUnitParamsRunner</span> |
| extends org.junit.runners.BlockJUnit4ClassRunner</pre> |
| <div class="block"><h1>JUnitParams</h1><br> |
| <p> |
| This is a JUnit runner for parameterised tests that don't suck. Annotate your test class with |
| <code>@RunWith(JUnitParamsRunner.class)</code> and place |
| <code>@Parameters</code> annotation on each test method which requires |
| parameters. Nothing more needed - no special structure, no dirty tricks. |
| </p> |
| <br> |
| <h2>Contents</h2> <b> <a href="#p1">1. Parameterising tests</a><br> |
| <a href="#a">a. Parameterising tests via values |
| in annotation</a><br> |
| <a href="#b">b. Parameterising tests via a |
| method that returns parameter values</a><br> |
| <a href="#c">c. Parameterising tests via |
| external classes</a><br> |
| <a href="#d">d. Loading parameters from files</a><br> |
| <a href="#d">e. Converting parameter values</a><br> |
| <a href="#p2">2. Usage with Spring</a><br> |
| <a href="#p3">3. Other options</a><br> |
| </b><br> |
| <h3 id="p1">1. Parameterising tests</h3> Parameterised tests are a great way |
| to limit the amount of test code when you need to test the same code under |
| different conditions. Ever tried to do it with standard JUnit tools like |
| Parameterized runner or Theories? I always thought they're so awkward to use, |
| that I've written this library to help all those out there who'd like to have |
| a handy tool. |
| |
| So here we go. There are a few different ways to use JUnitParams, I will try |
| to show you all of them here. |
| |
| <h4 id="a">a. Parameterising tests via values in annotation</h4> |
| <p> |
| You can parameterise your test with values defined in annotations. Just pass |
| sets of test method argument values as an array of Strings, where each string |
| contains the argument values separated by a comma or a pipe "|". |
| |
| <pre> |
| @Test |
| @Parameters({ "20, Tarzan", "0, Jane" }) |
| public void cartoonCharacters(int yearsInJungle, String person) { |
| ... |
| } |
| </pre> |
| |
| Sometimes you may be interested in passing enum values as parameters, then |
| you can just write them as Strings like this: |
| |
| <pre> |
| @Test |
| @Parameters({ "FROM_JUNGLE", "FROM_CITY" }) |
| public void passEnumAsParam(PersonType person) { |
| } |
| </pre> |
| |
| <h4 id="b">b. Parameterising tests via a method that returns parameter values |
| </h4> |
| <p> |
| Obivously passing parameters as strings is handy only for trivial situations, |
| that's why for normal cases you have a method that gives you a collection of |
| parameters: |
| |
| <pre> |
| @Test |
| @Parameters(method = "cartoonCharacters") |
| public void cartoonCharacters(int yearsInJungle, String person) { |
| ... |
| } |
| private Object[] cartoonCharacters() { |
| return $( |
| $(0, "Tarzan"), |
| $(20, "Jane") |
| ); |
| } |
| </pre> |
| |
| Where <code>$(...)</code> is a static method defined in |
| <code>JUnitParamsRunner</code> class, which returns its parameters as a |
| <code>Object[]</code> array. Just a shortcut, so that you don't need to write the ugly <code>new Object[] {}</code> kind of stuff. |
| |
| <p> |
| <code>method</code> can take more than one method name - you can pass as many |
| of them as you want, separated by commas. This enables you to divide your |
| test cases e.g. into categories. |
| <pre> |
| @Test |
| @Parameters(method = "menCharactes, womenCharacters") |
| public void cartoonCharacters(int yearsInJungle, String person) { |
| ... |
| } |
| private Object[] menCharacters() { |
| return $( |
| $(20, "Tarzan"), |
| $(2, "Chip"), |
| $(2, "Dale") |
| ); |
| } |
| private Object[] womenCharacters() { |
| return $( |
| $(0, "Jane"), |
| $(18, "Pocahontas") |
| ); |
| } |
| </pre> |
| <p> |
| The <code>method</code> argument of a <code>@Parameters</code> annotation can |
| be ommited if the method that provides parameters has a the same name as the |
| test, but prefixed by <code>parametersFor</code>. So our example would look |
| like this: |
| |
| <pre> |
| @Test |
| @Parameters |
| public void cartoonCharacters(int yearsInJungle, String person) { |
| ... |
| } |
| private Object[] parametersForCartoonCharacters() { |
| return $( |
| $(0, "Tarzan"), |
| $(20, "Jane") |
| ); |
| } |
| </pre> |
| |
| <p> |
| If you don't like returning untyped values and arrays, you can equally well |
| return any Iterable of concrete objects: |
| |
| <pre> |
| @Test |
| @Parameters |
| public void cartoonCharacters(Person character) { |
| ... |
| } |
| private List<Person> parametersForCartoonCharacters() { |
| return Arrays.asList( |
| new Person(0, "Tarzan"), |
| new Person(20, "Jane") |
| ); |
| } |
| </pre> |
| |
| If we had more than just two Person's to make, we would get redundant, |
| so JUnitParams gives you a simplified way of creating objects to be passed as |
| params. You can omit the creation of the objects and just return their constructor |
| argument values like this: |
| |
| <pre> |
| @Test |
| @Parameters |
| public void cartoonCharacters(Person character) { |
| ... |
| } |
| private List<?> parametersForCartoonCharacters() { |
| return Arrays.asList( |
| $(0, "Tarzan"), |
| $(20, "Jane") |
| ); |
| } |
| </pre> |
| And JUnitParams will invoke the appropriate constructor (<code>new Person(int age, String name)</code> in this case.) |
| <b>If you want to use it, watch out! Automatic refactoring of constructor |
| arguments won't be working here!</b> |
| |
| <p> |
| You can also define methods that provide parameters in subclasses and use |
| them in test methods defined in superclasses, as well as redefine data |
| providing methods in subclasses to be used by test method defined in a |
| superclass. That you can doesn't mean you should. Inheritance in tests is |
| usually a code smell (readability hurts), so make sure you know what you're |
| doing. |
| |
| <h4 id="c">c. Parameterising tests via external classes</h4> |
| <p> |
| For more complex cases you may want to externalise the method that provides |
| parameters or use more than one method to provide parameters to a single test |
| method. You can easily do that like this: |
| |
| <pre> |
| @Test |
| @Parameters(source = CartoonCharactersProvider.class) |
| public void testReadyToLiveInJungle(int yearsInJungle, String person) { |
| ... |
| } |
| ... |
| class CartoonCharactersProvider { |
| public static Object[] provideCartoonCharactersManually() { |
| return $( |
| $(0, "Tarzan"), |
| $(20, "Jane") |
| ); |
| } |
| public static Object[] provideCartoonCharactersFromDB() { |
| return cartoonsRepository.loadCharacters(); |
| } |
| } |
| </pre> |
| |
| All methods starting with <code>provide</code> are used as parameter |
| providers. |
| |
| <p> |
| Sometimes though you may want to use just one or few methods of some class to |
| provide you parameters. This can be done as well like this: |
| |
| <pre> |
| @Test |
| @Parameters(source = CartoonCharactersProvider.class, method = "cinderellaCharacters,snowwhiteCharacters") |
| public void testPrincesses(boolean isAPrincess, String characterName) { |
| ... |
| } |
| </pre> |
| |
| |
| <h4 id="d">d. Loading parameters from files</h4> You may be interested in |
| loading parameters from a file. This is very easy if it's a CSV file with |
| columns in the same order as test method parameters: |
| |
| <pre> |
| @Test |
| @FileParameters("cartoon-characters.csv") |
| public void shouldSurviveInJungle(int yearsInJungle, String person) { |
| ... |
| } |
| </pre> |
| |
| But if you want to process the data from the CSV file a bit to use it in the |
| test method arguments, you |
| need to use an <code>IdentityMapper</code>. Look: |
| |
| <pre> |
| @Test |
| @FileParameters(value = "cartoon-characters.csv", mapper = CartoonMapper.class) |
| public void shouldSurviveInJungle(Person person) { |
| ... |
| } |
| |
| public class CartoonMapper extends IdentityMapper { |
| @Override |
| public Object[] map(Reader reader) { |
| Object[] map = super.map(reader); |
| List<Object[]> result = new LinkedList<Object[]>(); |
| for (Object lineObj : map) { |
| String line = (String) lineObj; // line in a format just like in the file |
| result.add(new Object[] { ..... }); // some format edible by the test method |
| } |
| return result.toArray(); |
| } |
| |
| } |
| </pre> |
| |
| A CSV files with a header are also supported with the use of <code>CsvWithHeaderMapper</code> class. |
| |
| You may also want to use a completely different file format, like excel or |
| something. Then just parse it yourself: |
| |
| <pre> |
| @Test |
| @FileParameters(value = "cartoon-characters.xsl", mapper = ExcelCartoonMapper.class) |
| public void shouldSurviveInJungle(Person person) { |
| ... |
| } |
| |
| public class CartoonMapper implements DataMapper { |
| @Override |
| public Object[] map(Reader fileReader) { |
| ... |
| } |
| } |
| </pre> |
| |
| As you see, you don't need to open or close the file. Just read it from the |
| reader and parse it the way you wish. |
| |
| By default the file is loaded from the file system, relatively to where you start the tests from. But you can also use a resource from |
| the classpath by prefixing the file name with <code>classpath:</code> |
| |
| <h4 id="e">e. Converting parameter values</h4> |
| Sometimes you want to pass some parameter in one form, but use it in the test in another. Dates are a good example. It's handy to |
| specify them in the parameters as a String like "2013.01.01", but you'd like to use a Jodatime's LocalDate or JDKs Date in the test |
| without manually converting the value in the test. This is where the converters become handy. It's enough to annotate a parameter with |
| a <code>@ConvertParam</code> annotation, give it a converter class and possibly some options (like date format in this case) and |
| you're done. Here's an example: |
| <pre> |
| @Test |
| @Parameters({ "01.12.2012, A" }) |
| public void convertMultipleParams( |
| @ConvertParam(value = StringToDateConverter.class, options = "dd.MM.yyyy") Date date, |
| @ConvertParam(LetterToASCIIConverter.class) int num) { |
| |
| Calendar calendar = Calendar.getInstance(); |
| calendar.setTime(date); |
| |
| assertEquals(2012, calendar.get(Calendar.YEAR)); |
| assertEquals(11, calendar.get(Calendar.MONTH)); |
| assertEquals(1, calendar.get(Calendar.DAY_OF_MONTH)); |
| |
| assertEquals(65, num); |
| } |
| </pre> |
| |
| <h3 id="p2">2. Usage with Spring</h3> |
| <p> |
| You can easily use JUnitParams together with Spring. The only problem is that |
| Spring's test framework is based on JUnit runners, and JUnit allows only one |
| runner to be run at once. Which would normally mean that you could use only |
| one of Spring or JUnitParams. Luckily we can cheat Spring a little by adding |
| this to your test class: |
| |
| <pre> |
| private TestContextManager testContextManager; |
| |
| @Before |
| public void init() throws Exception { |
| this.testContextManager = new TestContextManager(getClass()); |
| this.testContextManager.prepareTestInstance(this); |
| } |
| </pre> |
| |
| This lets you use in your tests anything that Spring provides in its test |
| framework. |
| |
| <h3 id="p3">3. Other options</h3> <h4>Customizing how parameter objects are |
| shown in IDE</h4> |
| <p> |
| Tests show up in your IDE as a tree with test class name being the root, test |
| methods being nodes, and parameter sets being the leaves. If you want to |
| customize the way an parameter object is shown, create a <b>toString</b> |
| method for it. |
| <h4>Empty parameter sets</h4> |
| <p> |
| If you create a parameterised test, but won't give it any parameter sets, it |
| will be ignored and you'll be warned about it. |
| <h4>Parameterised test with no parameters</h4> |
| <p> |
| If for some reason you want to have a normal non-parameterised method to be |
| annotated with @Parameters, then fine, you can do it. But it will be ignored |
| then, since there won't be any params for it, and parameterised tests need |
| parameters to execute properly (parameters are a part of test setup, right?) |
| <h4>JUnit Rules</h4> |
| <p> |
| The runner for parameterised test is trying to keep all the @Rule's running, |
| but if something doesn't work - let me know. It's pretty tricky, since the |
| rules in JUnit are chained, but the chain is kind of... unstructured, so |
| sometimes I need to guess how to call the next element in chain. If you have |
| your own rule, make sure it has a field of type Statement which is the next |
| statement in chain to call. |
| <h4>Test inheritance</h4> |
| <p> |
| Although usually a bad idea, since it makes tests less readable, sometimes |
| inheritance is the best way to remove repetitions from tests. JUnitParams is |
| fine with inheritance - you can define a common test in the superclass, and |
| have separate parameters provider methods in the subclasses. Also the other |
| way around is ok, you can define parameter providers in superclass and have |
| tests in subclasses uses them as their input.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Author:</span></dt> |
| <dd>Pawel Lipinski ([email protected])</dd> |
| </dl> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colOne" scope="col">Constructor and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../junitparams/JUnitParamsRunner.html#JUnitParamsRunner-java.lang.Class-">JUnitParamsRunner</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><?> klass)</code> </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Method and Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../junitparams/JUnitParamsRunner.html#Z:Z:D-java.lang.Object...-">$</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>... params)</code> |
| <div class="block">Shortcut for returning an array of objects.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>protected void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../junitparams/JUnitParamsRunner.html#collectInitializationErrors-java.util.List-">collectInitializationErrors</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>> errors)</code> </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>protected <a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><org.junit.runners.model.FrameworkMethod></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../junitparams/JUnitParamsRunner.html#computeTestMethods--">computeTestMethods</a></span>()</code> </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>protected org.junit.runner.Description</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../junitparams/JUnitParamsRunner.html#describeMethod-org.junit.runners.model.FrameworkMethod-">describeMethod</a></span>(org.junit.runners.model.FrameworkMethod method)</code> </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>org.junit.runner.Description</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../junitparams/JUnitParamsRunner.html#getDescription--">getDescription</a></span>()</code> </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>protected org.junit.runners.model.Statement</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../junitparams/JUnitParamsRunner.html#methodInvoker-org.junit.runners.model.FrameworkMethod-java.lang.Object-">methodInvoker</a></span>(org.junit.runners.model.FrameworkMethod method, |
| <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> test)</code> </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>protected void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../junitparams/JUnitParamsRunner.html#runChild-org.junit.runners.model.FrameworkMethod-org.junit.runner.notification.RunNotifier-">runChild</a></span>(org.junit.runners.model.FrameworkMethod method, |
| org.junit.runner.notification.RunNotifier notifier)</code> </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.org.junit.runners.BlockJUnit4ClassRunner"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class org.junit.runners.BlockJUnit4ClassRunner</h3> |
| <code>createTest, describeChild, getChildren, getTestRules, methodBlock, possiblyExpectingExceptions, rules, testName, validateConstructor, validateFields, validateInstanceMethods, validateNoNonStaticInnerClass, validateOnlyOneConstructor, validateTestMethods, validateZeroArgConstructor, withAfters, withBefores, withPotentialTimeout</code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.org.junit.runners.ParentRunner"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class org.junit.runners.ParentRunner</h3> |
| <code>childrenInvoker, classBlock, classRules, filter, getName, getRunnerAnnotations, getTestClass, run, runLeaf, setScheduler, sort, validatePublicVoidNoArgMethods, withAfterClasses, withBeforeClasses</code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.org.junit.runner.Runner"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class org.junit.runner.Runner</h3> |
| <code>testCount</code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3> |
| <code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a name="JUnitParamsRunner-java.lang.Class-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>JUnitParamsRunner</h4> |
| <pre>public JUnitParamsRunner(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><?> klass) |
| throws org.junit.runners.model.InitializationError</pre> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>org.junit.runners.model.InitializationError</code></dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ============ METHOD DETAIL ========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a name="collectInitializationErrors-java.util.List-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>collectInitializationErrors</h4> |
| <pre>protected void collectInitializationErrors(<a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>> errors)</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code>collectInitializationErrors</code> in class <code>org.junit.runners.BlockJUnit4ClassRunner</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="runChild-org.junit.runners.model.FrameworkMethod-org.junit.runner.notification.RunNotifier-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>runChild</h4> |
| <pre>protected void runChild(org.junit.runners.model.FrameworkMethod method, |
| org.junit.runner.notification.RunNotifier notifier)</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code>runChild</code> in class <code>org.junit.runners.BlockJUnit4ClassRunner</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="computeTestMethods--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>computeTestMethods</h4> |
| <pre>protected <a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><org.junit.runners.model.FrameworkMethod> computeTestMethods()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code>computeTestMethods</code> in class <code>org.junit.runners.BlockJUnit4ClassRunner</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="methodInvoker-org.junit.runners.model.FrameworkMethod-java.lang.Object-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>methodInvoker</h4> |
| <pre>protected org.junit.runners.model.Statement methodInvoker(org.junit.runners.model.FrameworkMethod method, |
| <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> test)</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code>methodInvoker</code> in class <code>org.junit.runners.BlockJUnit4ClassRunner</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getDescription--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDescription</h4> |
| <pre>public org.junit.runner.Description getDescription()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code>getDescription</code> in interface <code>org.junit.runner.Describable</code></dd> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code>getDescription</code> in class <code>org.junit.runners.ParentRunner<org.junit.runners.model.FrameworkMethod></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="describeMethod-org.junit.runners.model.FrameworkMethod-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>describeMethod</h4> |
| <pre>protected org.junit.runner.Description describeMethod(org.junit.runners.model.FrameworkMethod method)</pre> |
| </li> |
| </ul> |
| <a name="Z:Z:D-java.lang.Object...-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>$</h4> |
| <pre>public static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] $(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>... params)</pre> |
| <div class="block">Shortcut for returning an array of objects. All parameters passed to this |
| method are returned in an <code>Object[]</code> array.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>params</code> - Values to be returned in an <code>Object[]</code> array.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Values passed to this method.</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a name="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/JUnitParamsRunner.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../index-all.html">Index</a></li> |
| <li><a href="../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../junitparams/FileParameters.html" title="annotation in junitparams"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../junitparams/Parameters.html" title="annotation in junitparams"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../index.html?junitparams/JUnitParamsRunner.html" target="_top">Frames</a></li> |
| <li><a href="JUnitParamsRunner.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| <p class="legalCopy"><small>Copyright © 2014 <a href="http://pragmatists.pl">Pragmatists</a>. All rights reserved.</small></p> |
| </body> |
| </html> |