lundi 30 mars 2015

why is @Parameterized.Parameters called twice?

I have this code:



@RunWith(ParallelParameterized.class)
public class RoutingResponseShortRegressionOneByOne {

...

@BeforeClass
public static void oneTimeSetUp() {
routingUrlHttpClientWithReRun = injector.getInstance(IRoutingUrlHttpClientWithReRun.class);
System.out.println("in RoutingResponseRegressionOneByOne:: oneTimeSetUp");
}

@AfterClass
public static void oneTearDown() {
// if (globalSettings.isSaveNewResponses) {
assertE2eCheckers();
stateSaver.save(e2EResultShort);
//}
}

//takes the next matrix row from OrganizeTestParameterizedInput()
public RoutingResponseShortRegressionOneByOne(String routingRequest, CompleteRoutingResponseShort
routingResponse) {
initNonStaticFromInjector();
this.routingRequest = routingRequest;
this.routingResponse = routingResponse;
}


//This is called before @BeforeClass !
@Parameterized.Parameters
public static Collection getRequests() throws IOException {
injector = Guice.createInjector(new MainModule());
initStaticFromInjector();
initTestInput();
e2EResultShort = new E2EResultShort();
return OrganizeTestParameterizedInput();
}


And it runs like this:



@Parameterized.Parameters

@Parameterized.Parameters

@BeforeClass

public RoutingResponseShortRegressionOneByOne --> ctor

@Test


why is @Parameterized.Parameters called twice in a row?


In addition, how can I know @RunWith(ParallelParameterized.class) really works? meaning how can I check if the run is in parallel?


Aucun commentaire:

Enregistrer un commentaire