Thinking about it again: Also verifications can make sense in order to check if a config attribute was (or was not) requested by a certain piece of code - e.g. sometimes the config object is stored as is as state, then you might check if a method doThis() calls config.configForThis()
On 2020-04-08 12:04, Georg Henzler wrote:
True, that's another option but there is no auto-complete for 'myproperty'and the code is more verbose than just using @Mock MyAnnotation annotation ... when(annotation.myproperty()).thenReturn("myvalue") // while all the other default values are automatically returned // (that's the part that is not happening today) So strictly speaking this is probably not a Mock (because you would not verify calls against it), but from a usage point of view it's totally natural to write @Mock MyConfig config @Mock BundleContext bundleContext and then use those with a testActivate() method. -Georg On 2020-04-08 11:52, Konrad Windszus wrote:Why not using the converter instead? Do you really want to verify interactions with the annotations? Usually I use Converter c = Converters.standardConverter(); Map<String, String> map = new HashMap<>(); map.put("myproperty", "myvalue"); MyAnnotation annotation = c.convert(map).to(MyAnnotation.class); KonradOn 8. Apr 2020, at 11:40, Georg Henzler <[email protected]> wrote: Hi all, if you are interested to make @Mock work better with Metatype config annotations, feel free to join (and support) the discussion in [1]. Best Regards Georg [1] https://github.com/mockito/mockito/issues/1900
