Fix sandboxed simulation of messages not understood by the executor
Previously, the sandbox kernel tests for ContextTest >> #testMessageNotUnderstood failed because when attempting to store an instance of TestEmptyClass in the sandbox memory, the messages #identityHash and #== were sent to this instance by WeakIdentityKeyDictionary. To resolve that error, this patch changes the dictionary type in sandboxes to a PluggableWeakKeyDictionary which uses mirror primitives (#simObjectIdentityHash:) for hashing and comparing the objects in the sandbox memory.
Revise kernel test framework
Adjust timeouts, error handlers, improve logging, provide convenience protocol for case creation, implement #isInstalled correctly; fix inheritance of sandbox tests, increase timeouts and step limits.
Fix float primitives in sandbox & enable CroquetPlugin
Hide simulator restart warning if not relevant (1b900ab)
Fix sandboxed simulation of messages not understood by the executor
Previously, the sandbox kernel tests for
ContextTest >> #testMessageNotUnderstood
failed because when attempting to store an instance ofTestEmptyClass
in the sandbox memory, the messages#identityHash
and#==
were sent to this instance byWeakIdentityKeyDictionary
. To resolve that error, this patch changes the dictionary type in sandboxes to aPluggableWeakKeyDictionary
which uses mirror primitives (#simObjectIdentityHash:
) for hashing and comparing the objects in the sandbox memory.Revise kernel test framework
Adjust timeouts, error handlers, improve logging, provide convenience protocol for case creation, implement
#isInstalled
correctly; fix inheritance of sandbox tests, increase timeouts and step limits.Fix float primitives in sandbox & enable CroquetPlugin
Hide simulator restart warning if not relevant (1b900ab)