[keycloak-dev] Keycloak - unit tests
Stan Silvert
ssilvert at redhat.com
Tue Oct 27 07:26:56 EDT 2015
You should never use mocks again. I elaborated on this topic in Bill's
blog several years ago and he wrote a followup article:
http://bill.burkecentral.com/2012/05/01/mocks-are-a-mockery/
On 10/27/2015 4:41 AM, Andrzej Go?awski wrote:
> "For example for federation, you need realm and user DB and you need
> to have realm configured with federation Provider"
>
> In such cases you can use mocks, stubs and object factories.
>
> "There is not much you can test within single module"
>
> IMHO there are still few things which would be nice to test. Look at
> the first class in the module LDAP Config for example. There are few
> comments suggesting refactoring it in the feature. I find refactoring
> single class or classes with heavy integration test painful and
> insufficient. Look at spring framework code. There are plenty of small
> unit tests which test only one thing so that it is really well tested
> as a whole! I think good testing is especially important in case of
> open source - where everybody adds some code. For instance me :) For
> me LDAP it is a new topic, but I would like to add some code to this
> part ... so I expect to make o a lot of mistakes :D
> "Btv. what's your plan for KEYCLOAK-1797"
> And now the hardest part :) As I said, I'm new in this topic (LDAP)
> so I decided to wrap my head around it for a while - can you
> reccommend me any reading materials suitable for beginners?
>
> "And in your LDAP environment, is it often that new role is added as
> member to some other roles?"
>
> No .. but it is critical in my company.
>
> "I wonder if we need to always do "deep" search in runtime, or if we
> can instead do it just at some point and rely on Keycloak composite
> roles . If you always need deep search and do something based on it,
> it will be good to have a flag in configuration, which will allow to
> disable it (for performance reasons)."
>
> Thank you for the hint :) I couldn't agree more.
>
> Best regards,
>
> Andrzej
>
> 2015-10-26 14:11 GMT+01:00 Marek Posolda <mposolda at redhat.com
> <mailto:mposolda at redhat.com>>:
>
> We prefer integration tests as you usually need more things to
> have available. For example for federation, you need realm and
> user DB and you need to have realm configured with
> federationProvider. There is not much you can test within single
> module, so we have just very simple tests in individual modules
> (like LDAPDnTest or PasswordPolicyTest), but most of the stuff is
> tested in testsuite. For KEYCLOAK-1797 I prefer to take a look at
> LDAPRoleMappingsTest and possibly add new test methods here.
>
> Btv. what's your plan for KEYCLOAK-1797 ? And in your LDAP
> environment, is it often that new role is added as member to some
> other roles? I wonder if we need to always do "deep" search in
> runtime, or if we can instead do it just at some point and rely on
> Keycloak composite roles . If you always need deep search and do
> something based on it, it will be good to have a flag in
> configuration, which will allow to disable it (for performance
> reasons).
>
> Marek
>
> On 26/10/15 08:55, Andrzej Go?awski wrote:
>> Hi Marek,
>>
>> Thanks for reply!
>> I saw those test, but personally I prefer unit tests over
>> integrated tests:)
>> I really recommend this: https://vimeo.com/80533536
>>
>> Best Regards,
>> Andrzej
>>
>> 2015-10-26 8:41 GMT+01:00 Marek Posolda <mposolda at redhat.com
>> <mailto:mposolda at redhat.com>>:
>>
>> Hi,
>>
>> most of the tests are in the testsuite/integration or
>> testsuite/integration-arquillian, not in the modules itself.
>> For the federation and ldap, you can take a look especially
>> to package org.keycloak.testsuite.federation .
>>
>> Marek
>>
>> On 25/10/15 21:51, Andrzej Go?awski wrote:
>>> Hi everyone!
>>>
>>> I decided to implement KEYCLOAK-1797 and started to look at
>>> the code (federation/ldap). I noticed lack of unit tests
>>> without which refactoring may be very error prone. I like
>>> writing test so I can write tests for that part. What are
>>> you thinking about it??
>>>
>>> Best Regards,
>>> Andrzej
>>>
>>>
>>> _______________________________________________
>>> keycloak-dev mailing list
>>> keycloak-dev at lists.jboss.org <mailto:keycloak-dev at lists.jboss.org>
>>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>
>>
>
>
>
>
> _______________________________________________
> keycloak-dev mailing list
> keycloak-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/keycloak-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/keycloak-dev/attachments/20151027/b75dd295/attachment.html
More information about the keycloak-dev
mailing list