Kernel image and SUnit
Klaus D. Witzel
klaus.witzel at cobss.com
Sun Jul 9 16:29:39 UTC 2006
Hi Pavel,
on Thu, 06 Jul 2006 22:39:21 +0200, you wrote:
> I have tried to import SUnit into the 3.9 kernel image. I have simply
> exported and extracted MC package. SUnit tests passed without errors.
This is a great improvement, thanx a lot!
> Then I have tried tests from category KernelTests-Objects (with
> Tests-Utilities).
> Only three tests failed:
> - 2-times testNewTileMorphRepresentative (surprisingly if we have no
> Morphic :-)
> - testClassCommnet WeakMessageSendTest (the class has no comment, it
> fails in original image too)
>
> So good news, we have well working SUnit for this image.
:)
> -- Pavel
I tried to reproduce a 7033boot.image using your 01-10 files. In
05 - ChangesOrganizer.st
is begins with XxxObject subclass: #ChangesOrganizer but there is no
XxxObject?
BTW: I'm about to color the methods used in your kernel. For example:
level 1 : methods invoked by image startup
level 2 : methods invoked by level 1 startup methods
and also:
level 1 : methods invoked by tests
level 2 : methods invoked by level 1 test methods
and also primitive methods which have fallen through (see example report
from a "naked" 7033 image start up below).
I'm using
- http://people.squeakfoundation.org/proj/Goya/
for that, which can produce nice sets of methods which do or don't invoke
each other.
Let me know what other requirements you have for the 3.9 kernel image,
perhaps I can address them with method coloring.
/Klaus
============================
primitive methods which have fallen trough,
picture taken shortly after 7033 image startup:
============================
BitBlt 30 copyBits 3 1
BitBlt 30 primDisplayString:from:to:map:xTable:kern: 3 1
SmallInteger 30 / 1 1
SmallInteger 30 < 1 1
SmallInteger 30 + 1 1
SmallInteger 30 = 1 1
SmallInteger 30 * 1 1
SmallInteger 30 ~= 1 1
LargePositiveInteger 30 \\ 1 1
LargePositiveInteger 30 // 1 1
LargePositiveInteger 30 quo: 1 1
LargePositiveInteger 30 + 1 1
LargePositiveInteger 30 - 1 1
LargePositiveInteger 30 * 1 1
Array 30 replaceFrom:to:with:startingAt: 1 1
ByteArray 30 replaceFrom:to:with:startingAt: 1 1
WriteStream 30 nextPut: 3 1
BlockContext 30 ensure: 1 1
BlockContext 30 newProcess 3 1
CharacterScanner 30
basicScanCharactersFrom:to:in:rightX:stopConditions:kern: 3 1
MultiCharacterScanner 30
basicScanCharactersFrom:to:in:rightX:stopConditions:kern: 3 1
legend:
30 can be ignored, it is the tag used for instrumenting
that particular method
3 1 and 1 1 can be ignored, it tells about call site
category and callee site category (as bit vectors)
what remains is class name and method name
More information about the Squeak-dev
mailing list
|