How to parameterize an InjectMock in a junit ParamterizedTest? #35437
-
I wish to parameterize a mock instance in a junit This way I can test my APIs behaviour in various responses conditions without configuring multiple mocks for every test TEDIOUS WAY:
DESIRED WAY
MY Attempt code:
Exception:com.thoughtworks.xstream.converters.ConversionException: No converter available ---- Debugging information ---- message : No converter available type : java.util.concurrent.ConcurrentLinkedQueue converter : com.thoughtworks.xstream.converters.reflection.SerializableConverter message[1] : Unable to make private void java.util.concurrent.ConcurrentLinkedQueue.readObject(java.io.ObjectInputStream) throws java.io.IOException,java.lang.ClassNotFoundException accessible: module java.base does not "opens java.util.concurrent" to unnamed module @58ecb515 converter[1] : com.thoughtworks.xstream.converters.reflection.ReflectionConverter message[2] : Unable to make field private static final long java.util.concurrent.ConcurrentLinkedQueue.serialVersionUID accessible: module java.base does not "opens java.util.concurrent" to unnamed module @58ecb515 ------------------------------- at com.thoughtworks.xstream.core.DefaultConverterLookup.lookupConverterForType(DefaultConverterLookup.java:88) at com.thoughtworks.xstream.XStream$1.lookupConverterForType(XStream.java:478) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:49) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:83) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:270) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:174) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:262) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:90) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:68) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:59) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:44) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:87) at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.writeBareItem(AbstractCollectionConverter.java:94) at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.writeItem(AbstractCollectionConverter.java:66) at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.writeCompleteItem(AbstractCollectionConverter.java:81) at com.thoughtworks.xstream.converters.collections.CollectionConverter.marshal(CollectionConverter.java:75) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:68) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:59) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:83) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:270) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:174) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:262) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:90) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:68) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:59) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:83) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:270) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:174) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:262) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:90) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:68) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:59) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:83) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:270) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:174) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:262) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:90) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:68) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:59) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:83) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:270) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:174) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:262) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:90) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:68) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:59) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:44) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:87) at com.thoughtworks.xstream.converters.reflection.SerializableConverter$1.defaultWriteObject(SerializableConverter.java:212) at com.thoughtworks.xstream.converters.reflection.SerializableConverter.doMarshal(SerializableConverter.java:272) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:90) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:68) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:59) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:83) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:270) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:174) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:262) at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:90) at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:68) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:59) at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:44) at com.thoughtworks.xstream.core.TreeMarshaller.start(TreeMarshaller.java:83) at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.marshal(AbstractTreeMarshallingStrategy.java:37) at com.thoughtworks.xstream.XStream.marshal(XStream.java:1303) at com.thoughtworks.xstream.XStream.marshal(XStream.java:1292) at com.thoughtworks.xstream.XStream.toXML(XStream.java:1265) at com.thoughtworks.xstream.XStream.toXML(XStream.java:1252) at io.quarkus.test.junit.internal.XStreamDeepClone.doClone(XStreamDeepClone.java:53) at io.quarkus.test.junit.internal.XStreamDeepClone1.get([XStreamDeepClone.java:46](command:_java.test.openStackTrace?%5B%22%5Ctat%20io.quarkus.test.junit.internal.XStreamDeepClone%241.get(XStreamDeepClone.java%3A46)%22%2C%22kubernetes-quickstart%22%5D))at org.acme.GreetingResourceTest.testHelloEndpoint([GreetingResourceTest.java:52](command:_java.test.openStackTrace?%5B%22%5Ctat%20org.acme.GreetingResourceTest.testHelloEndpoint(GreetingResourceTest.java%3A52)%22%2C%22kubernetes-quickstart%22%5D)) at io.quarkus.test.junit.QuarkusTestExtension.runExtensionMethod([QuarkusTestExtension.java:1015](command:_java.test.openStackTrace?%5B%22%5Ctat%20io.quarkus.test.junit.QuarkusTestExtension.runExtensionMethod(QuarkusTestExtension.java%3A1015)%22%2C%22kubernetes-quickstart%22%5D)) at io.quarkus.test.junit.QuarkusTestExtension.runExtensionMethod([QuarkusTestExtension.java:909](command:_java.test.openStackTrace?%5B%22%5Ctat%20io.quarkus.test.junit.QuarkusTestExtension.runExtensionMethod(QuarkusTestExtension.java%3A909)%22%2C%22kubernetes-quickstart%22%5D)) at io.quarkus.test.junit.QuarkusTestExtension.interceptTestTemplateMethod([QuarkusTestExtension.java:869](command:_java.test.openStackTrace?%5B%22%5Ctat%20io.quarkus.test.junit.QuarkusTestExtension.interceptTestTemplateMethod(QuarkusTestExtension.java%3A869)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.stream.ForEachOps1.get([XStreamDeepClone.java:46](command: j ava.test.openStackTrace?ForEachOp$OfRef.accept(ForEachOps.java:183) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) at java.base/java.util.stream.ReferencePipeline$31.accept([ReferencePipeline.java:197](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ReferencePipeline%243%241.accept(ReferencePipeline.java%3A197)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.stream.ForEachOps1.accept([ReferencePipeline.java:197](command: j ava.test.openStackTrace?ForEachOp$OfRef.accept(ForEachOps.java:183) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ReferencePipeline$31.accept([ReferencePipeline.java:197](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ReferencePipeline%243%241.accept(ReferencePipeline.java%3A197)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.stream.ForEachOps1.accept([ReferencePipeline.java:197](command: j ava.test.openStackTrace?ForEachOp$OfRef.accept(ForEachOps.java:183) at java.base/java.util.stream.ReferencePipeline$31.accept([ReferencePipeline.java:197](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ReferencePipeline%243%241.accept(ReferencePipeline.java%3A197)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.ArrayList1.accept([ReferencePipeline.java:197](command: j ava.test.openStackTrace?ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ReferencePipeline$31.accept([ReferencePipeline.java:197](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ReferencePipeline%243%241.accept(ReferencePipeline.java%3A197)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.Spliterators1.accept([ReferencePipeline.java:197](command: j ava.test.openStackTrace?ArraySpliterator.forEachRemaining(Spliterators.java:992) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ForEachOpsForEachOp.evaluateSequential([ForEachOps.java:150](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ForEachOps%24ForEachOp.evaluateSequential(ForEachOps.java%3A150)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.stream.ForEachOpsForEachOp.evaluateSequential([ForEachOps.java:150](command: j ava.test.openStackTrace?ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ReferencePipeline$31.accept([ReferencePipeline.java:197](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ReferencePipeline%243%241.accept(ReferencePipeline.java%3A197)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.ArrayList1.accept([ReferencePipeline.java:197](command: j ava.test.openStackTrace?ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ForEachOpsForEachOp.evaluateSequential([ForEachOps.java:150](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ForEachOps%24ForEachOp.evaluateSequential(ForEachOps.java%3A150)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.stream.ForEachOpsForEachOp.evaluateSequential([ForEachOps.java:150](command: j ava.test.openStackTrace?ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) at java.base/java.util.stream.ReferencePipeline$71.accept([ReferencePipeline.java:276](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ReferencePipeline%247%241.accept(ReferencePipeline.java%3A276)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.ArrayList1.accept([ReferencePipeline.java:276](command: j ava.test.openStackTrace?ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ForEachOpsForEachOp.evaluateSequential([ForEachOps.java:150](command:_java.test.openStackTrace?%5B%22%5Ctat%20java.base%2Fjava.util.stream.ForEachOps%24ForEachOp.evaluateSequential(ForEachOps.java%3A150)%22%2C%22kubernetes-quickstart%22%5D)) at java.base/java.util.stream.ForEachOpsForEachOp.evaluateSequential([ForEachOps.java:150](command: j ava.test.openStackTrace?ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 2 replies
-
/cc @Sgitario (kubernetes), @geoand (kubernetes), @iocanel (kubernetes) |
Beta Was this translation helpful? Give feedback.
-
This is a known issue we have with parameterized tests which we hope to address some time in the future |
Beta Was this translation helpful? Give feedback.
-
Any good approaches with current state @geoand ? |
Beta Was this translation helpful? Give feedback.
I resolved it like
Had to change
@InjectMock
to@Inject