I use https://code.google.com/p/miyamoto/ in my unit tests. Will work in other contexts as well.
On 27/04/18 14:59, João Assunção via osgi-dev wrote: > I'm using a custom version of Peter > Kriens aQute.configurable.Configurable. Initially, I was using it only > for unit testing but now when I need to run DS components in a plain > java application (non OSGi). > > Regards, > João Assunção > > Email: joao.assun...@exploitsys.com <mailto:joao.assun...@exploitsys.com> > Mobile: +351 916968984 > Phone: +351 211933149 > Web: www.exploitsys.com <http://www.exploitsys.com> > > > > On Fri, Apr 27, 2018 at 12:11 PM, Tim Ward via osgi-dev > <osgi-dev@mail.osgi.org <mailto:osgi-dev@mail.osgi.org>> wrote: > > Have you tried using the OSGi converter? > > You can fill a map with properties and then just: > > Converters.standardConverter().convert(map).to(MessagingEndpoint.class) > > This will honour the defaults from the annotation - see 707.4.4.4.5 > of the compendium. The closest link I can give > is > https://osgi.org/specification/osgi.cmpn/7.0.0/util.converter.html#util.converter-maps > > <https://osgi.org/specification/osgi.cmpn/7.0.0/util.converter.html#util.converter-maps> > > > Tim > >> On 27 Apr 2018, at 12:06, Christian Schneider via osgi-dev >> <osgi-dev@mail.osgi.org <mailto:osgi-dev@mail.osgi.org>> wrote: >> >> I am using DS components with type safe configs like below. >> My innermost tests should run outside of OSGi. So I am using Mockito >> to inject dependencies into my component. >> >> For configs I use >> >> @Mock >> MessagingEndpoint; >> >> In the test I then define behaviour like: >> >> when(config.endpoint()).thenReturn("http://localhost:8082 >> <http://localhost:8082/>"); >> >> >> This works but you do not get the default values. So you have to >> set all config attributes. >> >> Is there a better way to simulate such configs? >> >> Christian >> >> ----- >> @ObjectClassDefinition(name = "My config") >> public@interface MessagingEndpoint{ >> >> @AttributeDefinition >> String endpoint() default "http://localhost:8176 >> <http://localhost:8176/>"; >> >> @AttributeDefinition >> int connectTimeout() default 5000; >> } >> >> -- >> -- >> Christian Schneider >> http://www.liquid-reality.de <http://www.liquid-reality.de/> >> >> Computer Scientist >> http://www.adobe.com <http://www.adobe.com/> >> >> _______________________________________________ >> OSGi Developer Mail List >> osgi-dev@mail.osgi.org <mailto:osgi-dev@mail.osgi.org> >> https://mail.osgi.org/mailman/listinfo/osgi-dev >> <https://mail.osgi.org/mailman/listinfo/osgi-dev> > > > _______________________________________________ > OSGi Developer Mail List > osgi-dev@mail.osgi.org <mailto:osgi-dev@mail.osgi.org> > https://mail.osgi.org/mailman/listinfo/osgi-dev > <https://mail.osgi.org/mailman/listinfo/osgi-dev> > > > > > _______________________________________________ > OSGi Developer Mail List > osgi-dev@mail.osgi.org > https://mail.osgi.org/mailman/listinfo/osgi-dev > -- Ferry Huberts _______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org https://mail.osgi.org/mailman/listinfo/osgi-dev