[Seaside] Timeouts when trying to use Albatross unit testing
Adrian Lienhard
adi at netstyle.ch
Tue Feb 26 20:13:57 UTC 2008
Hi Matthias,
Hm, hard to tell...
Do the other example tests that come with Albatross work? Are there
any JavaScript libraries that could not be loaded or are there
JavaScript errors? What browser do you use?
You might also want to try out the pre-installed Albatross image,
which is linked from http://www.squeaksource.com/Albatross.html.
Cheers,
Adrian
On Feb 26, 2008, at 15:30 , Matthias Berth wrote:
> Hello,
>
>
> I have installed Albatross [1] and the prerequisites. However, when I
> try to run the example unit test APierTest that comes with it, I get
> timeout errors like the one attached below. It happens in
> ABrowser>>receiveOrTimeout which is sent from setUp:
>
> ATestCase>>setUp
> | handler |
> handler := ARequestHandler default reset; yourself.
> AComponentWrapper initializeWith: self subjectApplication for: self.
>
> browser := handler browser
> applicationUrl: 'http://localhost:9090/seaside/albatross'
> driverUrl: 'http://localhost:9090/seaside/driver'.
>
> browser timeout: 10.
> browser open.
> browser timeout: 5.
> browser receiveOrTimeout.
>
>
>
> I see the Pier web page appear in my web browser. I am running Squeak
> 3.9 under Windows, with Albatross-al.211 and Seaside2.8a1-mb.465
> (Sept. 2007).
>
> Any hints on how to get this working, or on how to isolate the problem
> would be greatly appreciated :-)
>
> Cheers
>
> Matthias
>
>
>
> [1] http://www.squeaksource.com/Albatross.html
>
> *********
> VM: Win32 - a SmalltalkImage
> Image: Squeak3.9 [latest update: #7067]
>
> SecurityManager state:
> Restricted: false
> FileAccess: true
> SocketAccess: true
>
>
> ABrowser(Object)>>error:
> Receiver: an ABrowser
> Arguments and temporary variables:
> aString: 'Timed out receiving reply'
> Receiver's instance variables:
> inQueue: a SharedQueue
> outQueue: a SharedQueue
> applicationUrl: 'http://localhost:9090/seaside/albatross'
> driverUrl: 'http://localhost:9090/seaside/driver'
> resultType: nil
>
> ABrowser>>receiveOrTimeout
> Receiver: an ABrowser
> Arguments and temporary variables:
> proc: a Process in [] in BlockContext>>newProcess {[self value.
> Processor term...etc...
> result: nil
> sem: a Semaphore()
> typedResult: nil
> Receiver's instance variables:
> inQueue: a SharedQueue
> outQueue: a SharedQueue
> applicationUrl: 'http://localhost:9090/seaside/albatross'
> driverUrl: 'http://localhost:9090/seaside/driver'
> resultType: nil
>
> APierTest(ATestCase)>>setUp
> Receiver: APierTest>>#testEditPage {testing}
> Arguments and temporary variables:
> handler: an ARequestHandler named: 'driver'
> Receiver's instance variables:
> testSelector: #testEditPage
> browser: an ABrowser
> testComponent: nil
>
> [] in APierTest(TestCase)>>runCase {[self setUp. self performTest]}
> Arguments and temporary variables:
>
>
> --- The full stack ---
> ABrowser(Object)>>error:
> ABrowser>>receiveOrTimeout
> APierTest(ATestCase)>>setUp
> [] in APierTest(TestCase)>>runCase {[self setUp. self performTest]}
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> BlockContext>>ensure:
> APierTest(TestCase)>>runCase
> [] in APierTest(TestCase)>>debug {[(self class selector:
> testSelector) runCase]}
> BlockContext>>on:do:
> [] in APierTest(TestCase)>>debug {[[(self class selector:
> testSelector) runCase] on: Error do: [:ex | Unha...]}
> BlockContext>>ensure:
> APierTest(TestCase)>>debug
> [] in TestRunner>>debugSuite: {[:each | each debug]}
> Set>>do:
> [] in TestRunner>>basicRunSuite:do: {[aTestSuite name isEmptyOrNil
> ifTrue: [aTestSuite tests do: aBlock] ifFa...]}
> BlockContext>>ensure:
> TestRunner>>basicRunSuite:do:
> TestRunner>>debugSuite:
> TestRunner>>debug:
> TestRunner>>errorSelected:
> PluggableListMorphPlus(PluggableListMorph)>>changeModelSelection:
> PluggableListMorphPlus(PluggableListMorph)>>mouseUp:
> PluggableListMorphPlus(Morph)>>handleMouseUp:
> MouseButtonEvent>>sentTo:
> PluggableListMorphPlus(Morph)>>handleEvent:
> PluggableListMorphPlus(Morph)>>handleFocusEvent:
> [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self.
> ActiveEvent := anEvent. result := focusHolder han...]}
> [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]}
> BlockContext>>on:do:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendMouseEvent:
> HandMorph>>handleEvent:
> HandMorph>>processEvents
> [] in WorldState>>doOneCycleNowFor: {[:h | ActiveHand := h. h
> processEvents. capturingGesture := capturingGest...]}
> Array(SequenceableCollection)>>do:
> WorldState>>handsDo:
> WorldState>>doOneCycleNowFor:
> WorldState>>doOneCycleFor:
> PasteUpMorph>>doOneCycle
> [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor
> yield. false] whileFalse. nil]}
> [] in BlockContext>>newProcess {[self value. Processor
> terminateActive]}
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
More information about the seaside
mailing list