agourlay/cornichon

Exception when running only one test with cornichon-test-framework

Closed this issue · 2 comments

yanns commented

When running with cornichon-test-framework, and running only one test

testOnly *<MyFeature> -- -t "<My feature> should <run>"

I got the following stack trace:

[error] java.lang.IllegalArgumentException: parallelism > 0
[error] 	at monix.reactive.internal.operators.MapParallelUnorderedObservable.unsafeSubscribeFn(MapParallelUnorderedObservable.scala:51)
[error] 	at monix.reactive.internal.operators.FoldLeftObservable.unsafeSubscribeFn(FoldLeftObservable.scala:37)
[error] 	at monix.reactive.Observable.$anonfun$firstOrElseL$1(Observable.scala:3052)
[error] 	at monix.eval.internal.TaskCreate$.$anonfun$apply$2(TaskCreate.scala:57)
[error] 	at monix.execution.schedulers.TrampolineExecutionContext.monix$execution$schedulers$TrampolineExecutionContext$$localRunLoop(TrampolineExecutionContext.scala:109)
[error] 	at monix.execution.schedulers.TrampolineExecutionContext.startLoopOptimal(TrampolineExecutionContext.scala:93)
[error] 	at monix.execution.schedulers.TrampolineExecutionContext.execute(TrampolineExecutionContext.scala:78)
[error] 	at monix.execution.schedulers.BatchingScheduler.execute(BatchingScheduler.scala:50)
[error] 	at monix.execution.schedulers.BatchingScheduler.execute$(BatchingScheduler.scala:47)
[error] 	at monix.execution.schedulers.AsyncScheduler.execute(AsyncScheduler.scala:29)
[error] 	at monix.execution.schedulers.ExecuteExtensions.executeTrampolined(ExecuteExtensions.scala:86)
[error] 	at monix.execution.schedulers.ExecuteExtensions.executeTrampolined$(ExecuteExtensions.scala:85)
[error] 	at monix.execution.Scheduler$Extensions.executeTrampolined(Scheduler.scala:256)
[error] 	at monix.eval.internal.TaskCreate$.$anonfun$apply$1(TaskCreate.scala:55)
[error] 	at monix.eval.internal.TaskCreate$.$anonfun$apply$1$adapted(TaskCreate.scala:47)
[error] 	at monix.eval.internal.TaskRunLoop$.executeAsyncTask(TaskRunLoop.scala:421)
[error] 	at monix.eval.internal.TaskRunLoop$.goAsync4Future(TaskRunLoop.scala:466)
[error] 	at monix.eval.internal.TaskRunLoop$.startFuture(TaskRunLoop.scala:362)
[error] 	at monix.eval.Task.runAsync(Task.scala:506)
[error] 	at com.github.agourlay.cornichon.framework.CornichonFeatureTask.execute(CornichonFeatureTask.scala:21)
yanns commented

Running with cornichon-scalatest is fine.

Thank you for the report, I have found the root cause for the bug.

The problem is present when the testOnly *MyFeature part matches more feature than the one actually containing the desired scenario.

It should work fine if you give the full name of the feature though.

I will push a fix this afternoon.