Regression

osx-32 / Tests-osx-32 / MacOSX32.Spec.Tests.Examples.SpecDemoTest.testSmokeTestForDemoPages (from Spec-Tests)

Failing for the past 1 build (Since #358 )
Took 4.3 sec.

Error Message

receiver of "translateBy:" is nil

Stacktrace

UndefinedObject(Object)>>doesNotUnderstand: #translateBy:
UndefinedObject>>doesNotUnderstand: #translateBy:
RubEditingArea(Morph)>>position:
RubEditingArea(Morph)>>center:
RubTextFieldMorph(RubScrolledTextMorph)>>configureGhostText:
RubTextFieldMorph>>configureGhostText:
[ self paragraphProvider configureGhostText: ghostText.
self addMorph: ghostText ] in RubGhostTextDisplayer>>showHideGhostText
Text(Collection)>>ifNotEmpty:ifEmpty:
RubGhostTextDisplayer>>showHideGhostText
RubGhostTextDisplayer>>extent:
RubGhostTextDisplayer(RubScrolledTextExtraSurface)>>manageLayoutInBounds:
[ ret := super manageLayoutInBounds: aRectangle ] in RubGhostTextDisplayer>>manageLayoutInBounds:
RubGhostTextDisplayer>>handleTextChangeWhile:
RubGhostTextDisplayer>>manageLayoutInBounds:
[ :r | myBounds := r manageLayoutInBounds: myBounds ] in RubTextFieldMorph(RubScrolledTextMorph)>>manageLayoutInBounds:
SortedCollection(OrderedCollection)>>do:
RubTextFieldMorph(RubScrolledTextMorph)>>manageLayoutInBounds:
RubTextFieldMorph>>manageLayoutInBounds:
RubTextFieldMorph(RubScrolledTextMorph)>>manageLayout
RubTextFieldMorph(RubScrolledTextMorph)>>position:
RubTextFieldMorph(Morph)>>bounds:
RubTextFieldMorph(Morph)>>layoutInBounds:
RubTextFieldMorph(Morph)>>layoutProportionallyIn:
[ :m | m layoutProportionallyIn: newBounds ] in ProportionalLayout>>layout:in:
Array(SequenceableCollection)>>do:
PanelMorph(Morph)>>submorphsDo:
ProportionalLayout>>layout:in:
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
[ :m | 
| subBox |
m visible
	ifTrue: [ subBox := m fullBounds.
		box
			ifNil: [ box := subBox copy ]
			ifNotNil: [ box := box quickMerge: subBox ] ] ] in PanelMorph(Morph)>>submorphBounds
Array(SequenceableCollection)>>do:
PanelMorph(Morph)>>submorphBounds
PanelMorph(Morph)>>privateFullBounds
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
[ :m | 
| subBox |
m visible
	ifTrue: [ subBox := m fullBounds.
		box
			ifNil: [ box := subBox copy ]
			ifNotNil: [ box := box quickMerge: subBox ] ] ] in PanelMorph(Morph)>>submorphBounds
Array(SequenceableCollection)>>do:
PanelMorph(Morph)>>submorphBounds
PanelMorph(Morph)>>privateFullBounds
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
PanelMorph(Morph)>>position:
PanelMorph(Morph)>>layoutInBounds:
PanelMorph(Morph)>>layoutProportionallyIn:
[ :m | m layoutProportionallyIn: newBounds ] in ProportionalLayout>>layout:in:
Array(SequenceableCollection)>>do:
PanelMorph(Morph)>>submorphsDo:
ProportionalLayout>>layout:in:
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
PanelMorph(Morph)>>position:
PanelMorph(Morph)>>layoutInBounds:
PanelMorph(Morph)>>layoutProportionallyIn:
[ :m | m layoutProportionallyIn: newBounds ] in ProportionalLayout>>layout:in:
Array(SequenceableCollection)>>do:
PanelMorph(Morph)>>submorphsDo:
ProportionalLayout>>layout:in:
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
[ :m | 
| subBox |
m visible
	ifTrue: [ subBox := m fullBounds.
		box
			ifNil: [ box := subBox copy ]
			ifNotNil: [ box := box quickMerge: subBox ] ] ] in PanelMorph(Morph)>>submorphBounds
Array(SequenceableCollection)>>do:
PanelMorph(Morph)>>submorphBounds
PanelMorph(Morph)>>privateFullBounds
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
[ :m | 
| subBox |
m visible
	ifTrue: [ subBox := m fullBounds.
		box
			ifNil: [ box := subBox copy ]
			ifNotNil: [ box := box quickMerge: subBox ] ] ] in PanelMorph(Morph)>>submorphBounds
Array(SequenceableCollection)>>do:
PanelMorph(Morph)>>submorphBounds
PanelMorph(Morph)>>privateFullBounds
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
PanelMorph(Morph)>>position:
PanelMorph(Morph)>>layoutInBounds:
TableLayout>>layoutTopToBottom:in:
TableLayout>>layout:in:
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
PanelMorph(Morph)>>position:
PanelMorph(Morph)>>layoutInBounds:
TableLayout>>layoutTopToBottom:in:
TableLayout>>layout:in:
NotebookMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in NotebookMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
NotebookMorph(Morph)>>computeFullBounds
NotebookMorph(Morph)>>fullBounds
[ :m | 
| subBox |
m visible
	ifTrue: [ subBox := m fullBounds.
		box
			ifNil: [ box := subBox copy ]
			ifNotNil: [ box := box quickMerge: subBox ] ] ] in PanelMorph(Morph)>>submorphBounds
Array(SequenceableCollection)>>do:
PanelMorph(Morph)>>submorphBounds
PanelMorph(Morph)>>privateFullBounds
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
PanelMorph(Morph)>>position:
PanelMorph(Morph)>>layoutInBounds:
TableLayout>>layoutTopToBottom:in:
TableLayout>>layout:in:
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
PanelMorph(Morph)>>position:
PanelMorph(Morph)>>layoutInBounds:
TableLayout>>layoutTopToBottom:in:
TableLayout>>layout:in:
PanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in PanelMorph(Morph)>>computeFullBounds
BlockClosure>>on:do:
PanelMorph(Morph)>>computeFullBounds
PanelMorph(Morph)>>fullBounds
[ :m | 
| subBox |
m visible
	ifTrue: [ subBox := m fullBounds.
		box
			ifNil: [ box := subBox copy ]
			ifNotNil: [ box := box quickMerge: subBox ] ] ] in SpecWindow(Morph)>>submorphBounds
Array(SequenceableCollection)>>do:
SpecWindow(Morph)>>submorphBounds
SpecWindow(Morph)>>privateFullBounds
SpecWindow(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in SpecWindow(Morph)>>computeFullBounds
BlockClosure>>on:do:
SpecWindow(Morph)>>computeFullBounds
SpecWindow(Morph)>>fullBounds
WorldMorph(Morph)>>privateInvalidateMorph:
WorldMorph(Morph)>>removeMorph:
SpecWindow(Morph)>>privateDelete
SpecWindow(Morph)>>delete
SpecWindow(SystemWindow)>>deleteDiscardingChanges
SpecWindow(SystemWindow)>>delete
SpecWindow(StandardWindow)>>delete
SpecWindow(SystemWindow)>>close
MorphicWindowAdapter>>close
MorphicWindowAdapter(AbstractAdapter)>>update:with:
[ :aDependent | aDependent update: anAspect with: anObject ] in WindowPresenter(Model)>>changed:with:
DependentsArray>>do:
WindowPresenter(Model)>>changed:with:
WindowPresenter>>close
ByteSymbol(Symbol)>>cull:
WindowPresenter(ProtoObject)>>ifNotNil:
[ window ifNotNil: #close ] in [ :demoPage | 
[ self
	shouldnt: [ window := demoPage new openWithSpec ]
	raise: Error
	description: 'Broken demo page: ' , demoPage asString ]
	ensure: [ window ifNotNil: #close ] ] in SpecDemoTest>>testSmokeTestForDemoPages
BlockClosure>>ensure:
[ :demoPage | 
[ self
	shouldnt: [ window := demoPage new openWithSpec ]
	raise: Error
	description: 'Broken demo page: ' , demoPage asString ]
	ensure: [ window ifNotNil: #close ] ] in SpecDemoTest>>testSmokeTestForDemoPages
OrderedCollection>>do:
SpecDemoTest>>testSmokeTestForDemoPages
SpecDemoTest(TestCase)>>performTest