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);
Konrad
On 8. Apr 2020, at 11:40, Georg Henzler <ghenz...@apache.org> 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