No problem at all, if I can contribute something else just tell me :)
On Thu, Sep 2, 2010 at 3:37 PM, Tim Donohue <tdono...@duraspace.org> wrote:
> Pere,
>
> Yes -- thanks for finding the fix! It looks like I was the one who
> actually caused this problem -- I must've neglected to run a full unit test
> when committing my AIP work (which went into Trunk just a few days after the
> Unit Test Framework).
>
> I agree with Robin's point. We need to change our Committer practices so
> that we make sure to run through the Unit Tests *before* committing code
> (and we also need to be updating the Unit Tests when adding new
> code/methods). I'll write myself a note to bring this up at our next
> Developers Meeting.
>
> - Tim
>
>
> On 9/2/2010 5:25 AM, TAYLOR Robin wrote:
>
>> Hi Pere,
>>
>> Great work, thanks for that. I'll raise a Jira and attach the patch.
>>
>> This raises an issue for us all though, we already see code being
>> committed that breaks the tests. My concern is that we will see a gradual
>> degradation until people just ignore the test results. It must become
>> standard practice that people run the tests and get zero failures before
>> committing any code. Tests should be considered of equal importance to the
>> code, if a test fails then the code should be considered broken. That's
>> enough ranting from me....
>>
>> Cheers, Robin.
>>
>>
>> Robin Taylor
>> Main Library
>> University of Edinburgh
>> Tel. 0131 6513808
>>
>> -----Original Message-----
>>> From: araco...@gmail.com [mailto:araco...@gmail.com] On
>>> Behalf Of Pere Villega
>>> Sent: 02 September 2010 00:42
>>> To: TAYLOR Robin
>>> Cc: Tim Donohue; dspace-devel Developers; Stuart Lewis
>>> Subject: Re: [Dspace-devel] Unit tests failures
>>>
>>> Hi all,
>>>
>>> I've run the tests from the code in the GSoC branch and I get
>>> no errors:
>>>
>>> Results :
>>> Tests run: 500, Failures: 0, Errors: 0, Skipped: 0
>>>
>>>
>>>
>>> I downloaded the current trunk and I get:
>>>
>>> Results :
>>>
>>> Tests in error:
>>> testCreateAuth(org.dspace.content.CommunityTest)
>>> testEquals(org.dspace.content.CommunityTest)
>>> testAddSubcommunityAuth(org.dspace.content.CommunityTest)
>>> testRemoveSubcommunityAuth(org.dspace.content.CommunityTest)
>>>
>>> Tests run: 500, Failures: 0, Errors: 4, Skipped: 0
>>>
>>> This seems to indicate the errors arise due to changes in the
>>> Community class.
>>>
>>> Issues detected:
>>>
>>> - testCreateAuth:
>>>
>>> I had to mock the authorization call:
>>> AuthorizeManager.authorizeActionBoolean((Context) any,
>>> (Community) any, Constants.ADD);
>>>
>>> I see that a new check seems to have been added in the
>>> Community.create(Community, Context, Handle), line 211:
>>>
>>> parent != null
>>>
>>> My tests try to create a community with no parent, and it
>>> fails when the code reaches that line, producing the error.
>>> I'm sure this change has a reason, but anyway I have to ask
>>> (as it breaks an existing test): it's intended?
>>>
>>> I've modified the test adding an extra method to test the
>>> case when we create a community without parent and we are not
>>> admins (should throw an exception according to new code).
>>> I've also added a mock of the "isAdmin" authorization check
>>> (I had only used the ADD access before assuming admin has all
>>> permissions, that was a mistake seeing the new code).
>>>
>>>
>>> - testEquals:
>>> - testAddSubcommunityAuth:
>>> - testRemoveSubcommunityAuth:
>>>
>>> Same issue as before, fixed the test code.
>>>
>>> An observation: when creating a Community, line 210 of class
>>> Community we check for:
>>>
>>> if (!(AuthorizeManager.isAdmin(context) ||
>>> (parent != null&&
>>> AuthorizeManager.authorizeActionBoolean(context, parent,
>>> Constants.ADD))))
>>>
>>> but when removing, line 1006, we only check for:
>>>
>>> AuthorizeManager.authorizeAction(ourContext, this, Constants.REMOVE);
>>>
>>> The second doesn't check if you are Admin. It's expected? Why
>>> yes on create and not on removal? Sorry but it confuses me.
>>>
>>>
>>>
>>> About the 2 tests related to performance, it would be good if
>>> everybody who is getting an error there could tweak the
>>> performance checks until they pass for them. That way we
>>> would get a sample of the minimum time expected in a
>>> developer machine to run them. Or we can remove them until a
>>> decision is made on them.
>>>
>>>
>>> As I'm not sure of what's my status with trunk since GSoC, I
>>> attach a patch with the changes done to CommunityTest. It
>>> should fix it.
>>>
>>> Any other issue, I'm here :)
>>>
>>>
>>> Cheers,
>>> Pere
>>>
>>>
>>>
>>>
>>> On Tue, Aug 31, 2010 at 9:20 AM, TAYLOR Robin
>>> <robin.tay...@ed.ac.uk> wrote:
>>>
>>>
>>> Hi Pere,
>>>
>>> Thanks for the help, there is no rush.
>>>
>>> I was thinking about the 'admin' failures eg...
>>>
>>> testEquals(org.dspace.content.CommunityTest) Time
>>> elapsed: 0.156 sec<<< ERROR!
>>> org.dspace.authorize.AuthorizeException: Only
>>> administrators can create communities
>>>
>>> Assuming the eperson is not an admin then this
>>> exception is an acceptable result and should be caught and
>>> ignored. I guess ideally we would want to test twice, once as
>>> an admin and once as an ordinary user, but I don't know how
>>> practical that is.
>>>
>>> I realise you have other commitments these days. I
>>> haven't touched the code as I didn't want to do so without
>>> checking with you first but let me know if you want me to do anything.
>>>
>>> Thanks again, Robin.
>>>
>>>
>>>
>>> Robin Taylor
>>> Main Library
>>> University of Edinburgh
>>> Tel. 0131 6513808
>>>
>>> > -----Original Message-----
>>>
>>> > From: araco...@gmail.com [mailto:araco...@gmail.com] On
>>> > Behalf Of Pere Villega
>>> > Sent: 30 August 2010 18:02
>>> > To: TAYLOR Robin
>>> > Cc: Tim Donohue; dspace-devel Developers
>>> > Subject: Re: [Dspace-devel] Unit tests failures
>>> >
>>>
>>> > Hi,
>>> >
>>> > I'll check the issues :) Can't assure I'll do it
>>> today, but ASAP.
>>> >
>>> > Cheers,
>>> > Pere
>>> >
>>> >
>>> >
>>> > On Mon, Aug 30, 2010 at 4:07 PM, TAYLOR Robin
>>> > <robin.tay...@ed.ac.uk> wrote:
>>> >
>>> >
>>> > Hi Tim,
>>> >
>>> > Thanks for the reply. I have had a quick look at the
>>> > failures that I get but you don't and they are performance
>>> > type tests which explains why its not consistent...
>>> >
>>> > Tests run: 2, Failures: 0, Errors: 2, Skipped: 0, Time
>>> > elapsed: 44.134 sec<<< FAILURE!
>>> >
>>> > testCountItems(org.dspace.content.CommunityCollectionIntegrati
>>> > onTest) Time elapsed: 29.797 sec<<< ERROR!
>>> > org.databene.contiperf.PerfTestFailure: Average
>>> > execution time of
>>> > org.dspace.content.CommunityCollectionIntegrationTest.testCoun
>>> > tItems exceeded the requirement of 333 ms, measured 593.86 ms
>>> >
>>> > The other failures are Exceptions thrown because the
>>> > eperson does not have admin authority. I'll track down Pere
>>> > and see if he can help and I'll raise a Jira for any
>>> required changes.
>>> >
>>> > Cheers, Robin.
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > Robin Taylor
>>> > Main Library
>>> > University of Edinburgh
>>> > Tel. 0131 6513808
>>> >
>>> >
>>> > > -----Original Message-----
>>> > > From: Tim Donohue [mailto:tdono...@duraspace.org]
>>> > > Sent: 30 August 2010 15:44
>>> > > To: TAYLOR Robin
>>> > > Cc: dspace-devel Developers; Pere Villega
>>> > > Subject: Re: [Dspace-devel] Unit tests failures
>>> > >
>>> > > Hi Robin& all,
>>> > >
>>> > > I actually get different results as Robin
>>> when I run the
>>> > > following from [dspace-src]/dspace-test/
>>> > >
>>> > > mvn package -Dmaven.test.skip=false
>>> > >
>>> > > I still get failures, but I only see four failures:
>>> > >
>>> > > Results :
>>> > >
>>> > > Tests in error:
>>> > > testEquals(org.dspace.content.CommunityTest)
>>> > > testCreateAuth(org.dspace.content.CommunityTest)
>>> > >
>>> testAddSubcommunityAuth(org.dspace.content.CommunityTest)
>>> > >
>>> > testRemoveSubcommunityAuth(org.dspace.content.CommunityTest)
>>> > >
>>> > > Tests run: 500, Failures: 0, Errors: 4, Skipped: 0
>>> > >
>>> > > This is based on the absolute latest Trunk
>>> (revision 5302).
>>> > >
>>> > > Perhaps we should enter these issues into
>>> JIRA for review by
>>> > > Pere or whoever else can get to it?
>>> > >
>>> > > BTW -- I don't seem to be able to run 'mvn
>>> test' to run the
>>> > > tests, as described in Pere's wiki docs (it
>>> always returns
>>> > > 'tests are skipped').
>>> > > I always have to run 'mvn package
>>> -Dmaven.test.skip=false'
>>> > > directly from the 'dspace-test' directory.
>>> > >
>>> > > - Tim
>>> > >
>>> > >
>>> > > On 8/30/2010 8:12 AM, TAYLOR Robin wrote:
>>> > > > I'm getting the following failures in the
>>> unit tests and
>>> > > wondered if anyone had already fixed them.
>>> I'm being lazy
>>> > > here so if I don't get any replies then I'll
>>> get my finger
>>> > > out and investigate.
>>> > > >
>>> > > > Cheers, Robin.
>>> > > >
>>> > > >
>>> > > > Results :
>>> > > >
>>> > > > Tests in error:
>>> > > > testEquals(org.dspace.content.CommunityTest)
>>> > > > testCreateAuth(org.dspace.content.CommunityTest)
>>> > > >
>>> testAddSubcommunityAuth(org.dspace.content.CommunityTest)
>>> > > >
>>> > testRemoveSubcommunityAuth(org.dspace.content.CommunityTest)
>>> > > >
>>> > >
>>> >
>>> testCountItems(org.dspace.content.CommunityCollectionIntegrationTest)
>>> > > >
>>> > > >
>>> > >
>>> >
>>> testCreateTree(org.dspace.content.CommunityCollectionIntegrationTest)
>>> > > >
>>> > > > Tests run: 500, Failures: 0, Errors: 6, Skipped: 0
>>> > > >
>>> > > >
>>> > > >
>>> > > > Robin Taylor
>>> > > > Main Library
>>> > > > University of Edinburgh
>>> > > > Tel. 0131 6513808
>>> > >
>>> >
>>> > --
>>> > The University of Edinburgh is a charitable
>>> body, registered in
>>> > Scotland, with registration number SC005336.
>>> >
>>> >
>>> >
>>> >
>>> >
>>>
>>> --
>>>
>>> The University of Edinburgh is a charitable body, registered in
>>> Scotland, with registration number SC005336.
>>>
>>>
>>>
>>>
>>>
>>>
------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:
Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Dspace-devel mailing list
Dspace-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-devel