• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: WOUnit testing with partial entities
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: WOUnit testing with partial entities


  • Subject: Re: WOUnit testing with partial entities
  • From: Fabian Peters <email@hidden>
  • Date: Thu, 22 Aug 2013 18:32:29 +0200

Hi Henrique,

I get the same exception, but only once in a while (one in ten builds or so) and only when jenkins is running the tests via maven. When running the tests from eclipse, everything's fine. There does seem to be some sort of timing or concurrency problem.

Fabian

Am 22.08.2013 um 02:31 schrieb Henrique Prange:

> Hi Paul,
>
> That is exactly the problem some WOUnit's users are reporting. The only way I was able to reproduce this kind of issue in my own environment was by turning the unit tests execution parallel. Anyway, this causes me problems even with WOUnit 1.2. :(
>
> So, I added a lot of logs and compared the execution of tests on WOUnit 1.2 and the latest version of WOUnit. Clearly, the current version is reusing the same model group between test executions. I've changed the way things are initialized and the logs look almost identical now. There's a new snapshot here [1] with the mentioned changes. Would you mind to try it?
>
> [1]https://dl.dropboxusercontent.com/u/9599580/wounit-1.3-SNAPSHOT-3.jar
>
> Cheers,
>
> Henrique
>
> On 17/08/2013, at 08:29, Paul Hoadley <email@hidden> wrote:
>
>> Hi Henrique,
>>
>> On 02/08/2013, at 9:08 AM, Henrique Prange <email@hidden> wrote:
>>
>>> Good to hear.
>>>
>>> I'm trying to solve another problem that seems related to the EOF initialization. I'm going to release a new version of WOUnit during the weekend (solving the other problem or not).
>>
>> Just out of interest, what was the other problem you were having with EOF initialisation?  I've updated to that 1.3-SNAPSHOT build across a range of projects, and while it fixes the issue with partial entities, _some_ tests that were passing under 1.2 are now failing, and it seems to be during EO initialisation, for example setting up @Dummy EOs.  Worse, everything is fine in development, the tests are only failing once they hit the Jenkins build server, which makes it awful to debug.
>>
>> Here's an example stack trace at the point of failure, for what it's worth.  I'm a bit stumped.  Can you see anything meaningful?
>>
>>  [junit] Testcase: testToString(net.logicsquad.lssurvey.model.SurveyInstanceTest):	Caused an ERROR
>>  [junit] java.lang.reflect.InvocationTargetException
>>  [junit] com.webobjects.foundation.NSForwardException [java.lang.reflect.InvocationTargetException] null:java.lang.reflect.InvocationTargetException
>>  [junit] 	at com.webobjects.foundation._NSUtilities._explainInstantiationException(_NSUtilities.java:626)
>>  [junit] 	at com.webobjects.foundation._NSUtilities.instantiateObjectWithConstructor(_NSUtilities.java:665)
>>  [junit] 	at com.webobjects.eoaccess.EOEntityClassDescription.createInstanceWithEditingContext(EOEntityClassDescription.java:242)
>>  [junit] 	at com.wounit.rules.MockEditingContext.createSavedObject(MockEditingContext.java:216)
>>  [junit] 	at com.wounit.rules.MockEditingContext.createSavedObject(MockEditingContext.java:177)
>>  [junit] 	at com.wounit.rules.MockEditingContext$DummyFacade.create(MockEditingContext.java:83)
>>  [junit] 	at com.wounit.rules.AnnotationProcessor.createEOForType(AnnotationProcessor.java:49)
>>  [junit] 	at com.wounit.rules.AnnotationProcessor.initializeObject(AnnotationProcessor.java:172)
>>  [junit] 	at com.wounit.rules.AnnotationProcessor.process(AnnotationProcessor.java:205)
>>  [junit] 	at com.wounit.rules.MockEditingContext.before(MockEditingContext.java:149)
>>  [junit] 	at com.wounit.rules.AbstractEditingContextRule$1.evaluate(AbstractEditingContextRule.java:160)
>>  [junit] Caused by: java.lang.reflect.InvocationTargetException
>>  [junit] 	at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
>>  [junit] 	at com.webobjects.foundation._NSUtilities.instantiateObjectWithConstructor(_NSUtilities.java:659)
>>  [junit] Caused by: java.lang.NullPointerException
>>  [junit] 	at com.webobjects.eoaccess.EOModel.createPrototypeCache(EOModel.java:631)
>>  [junit] 	at com.webobjects.eoaccess.EOModel.prototypeAttributeNamed(EOModel.java:699)
>>  [junit] 	at com.webobjects.eoaccess.ERXModel.prototypeAttributeNamed(ERXModel.java:315)
>>  [junit] 	at com.webobjects.eoaccess.EOAttribute.<init>(EOAttribute.java:998)
>>  [junit] 	at com.webobjects.eoaccess.EOEntity.attributes(EOEntity.java:816)
>>  [junit] 	at com.webobjects.eoaccess.EOEntity.attributeNamed(EOEntity.java:789)
>>  [junit] 	at com.webobjects.eoaccess.EOEntity.classProperties(EOEntity.java:1098)
>>  [junit] 	at com.webobjects.eoaccess.EOEntity._propertyDictionaryInitializer(EOEntity.java:3321)
>>  [junit] 	at com.webobjects.eoaccess.EOEntity._newDictionaryForProperties(EOEntity.java:3667)
>>  [junit] 	at com.webobjects.eoaccess.EOEntityClassDescription._newDictionaryForProperties(EOEntityClassDescription.java:88)
>>  [junit] 	at com.webobjects.eocontrol.EOGenericRecord.__setClassDescription(EOGenericRecord.java:111)
>>  [junit] 	at com.webobjects.eocontrol.EOGenericRecord.__setClassDescription(EOGenericRecord.java:100)
>>  [junit] 	at com.webobjects.eocontrol.EOGenericRecord.<init>(EOGenericRecord.java:73)
>>  [junit] 	at er.extensions.eof.ERXGenericRecord.<init>(ERXGenericRecord.java:102)
>>  [junit] 	at net.logicsquad.webobjects.core.eof.LSGenericRecord.<init>(LSGenericRecord.java:54)
>>  [junit] 	at net.logicsquad.lssurvey.model.survey._Survey.<init>(_Survey.java:15)
>>  [junit] 	at net.logicsquad.lssurvey.model.survey.Survey.<init>(Survey.java:491)
>>  [junit]
>>  [junit]
>>  [junit] Test net.logicsquad.lssurvey.model.SurveyInstanceTest FAILED
>>
>>
>> --
>> Paul Hoadley
>> http://logicsquad.net/
>>
>>
>>
>
>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list      (email@hidden)
> Help/Unsubscribe/Update your Subscription:
>
> This email sent to email@hidden


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


References: 
 >Re: WOUnit testing with partial entities (From: Henrique Prange <email@hidden>)
 >Re: WOUnit testing with partial entities (From: Paul Hoadley <email@hidden>)
 >Re: WOUnit testing with partial entities (From: Henrique Prange <email@hidden>)

  • Prev by Date: adding javascript in d2w
  • Next by Date: Re: unique contraint error
  • Previous by thread: Re: WOUnit testing with partial entities
  • Next by thread: Re: createPrototypeCache NullPointerException
  • Index(es):
    • Date
    • Thread