help-smalltalk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Help-smalltalk] Re: GNU Smalltalk Segfault with a Script I Wrote


From: Paolo Bonzini
Subject: [Help-smalltalk] Re: GNU Smalltalk Segfault with a Script I Wrote
Date: Wed, 07 Jun 2006 08:54:52 +0200
User-agent: Thunderbird 1.5.0.4 (Macintosh/20060530)

Shlomi Fish wrote:
Hi!

The attached script causes GNU Smalltalk (version 2.1.12, installed from source) to crash. I'm using Mandriva 2006.
You are not loading the SUnit package, so your MsfTest class a) does not implement #run: and b) derives from nil. It is normal to have a crash if you call a method that is not understood by a class that does not implement #doesNotUnderstand:.

I am currently thinking of a scripting syntax that will catch mistakes like this.

It works if you add a

   PackageLoader fileInPackage: #SUnit!

line at the top, and change the last line to "t run".

Paolo

----

TestCase subclass: #MsfTest
   instanceVariableNames: ''
   classVariableNames: ''
   poolDictionaries: ''
   category: 'SUnit-Tests'!
Object subclass: #SquaringFactors
   instanceVariableNames: 'numbers'
   classVariableNames: ''
   poolDictionaries: ''
   category: 'Program'!
!SquaringFactors methodsFor: 'initialization'!
from: myarr
   numbers := (OrderedCollection new: myarr).
!
!MsfTest methodsFor: 'testing'!
testMultiply
   |n m ret|
   n := (SquaringFactors new) from: #(2).
   m := (SquaringFactors new) from: #(3).
   ret := ((n multiplyBy: m) getArray).
   self assert: (ret at: 1) = 2.
   self assert: (ret at: 2) = 3.
!!
|t|
t := (MsfTest new).
t run: #testMultiply.

---
!






reply via email to

[Prev in Thread] Current Thread [Next in Thread]