Marcel Taeumel uploaded a new version of FFI-Tests to project FFI: http://source.squeak.org/FFI/FFI-Tests-mt.62.mcz
==================== Summary ====================
Name: FFI-Tests-mt.62 Author: mt Time: 18 August 2021, 11:56:50.753133 am UUID: 3ed16468-cd62-8146-afe1-0403171c62b6 Ancestors: FFI-Tests-mt.61
Move image tests to new test case. Add manual checks for type integrity.
=============== Diff against FFI-Tests-mt.61 ===============
Item was removed: - ----- Method: ExternalTypeTests>>testAllArrayTypes (in category 'tests - image') ----- - testAllArrayTypes - - ExternalType allArrayTypes do: [:type | - self - deny: type isAtomic; - deny: type isPointerType; - deny: type isStructureType; - assert: type isArrayType].!
Item was removed: - ----- Method: ExternalTypeTests>>testAllAtomicTypes (in category 'tests - image') ----- - testAllAtomicTypes - - ExternalType allAtomicTypes do: [:type | - self - assert: type isAtomic; - deny: type isPointerType; - deny: type isStructureType; - deny: type isArrayType].!
Item was removed: - ----- Method: ExternalTypeTests>>testAllPointerTypes (in category 'tests - image') ----- - testAllPointerTypes - - ExternalType allPointerTypes do: [:type | - self - deny: type isAtomic; - assert: type isPointerType; - deny: type isStructureType; - deny: type isArrayType].!
Item was removed: - ----- Method: ExternalTypeTests>>testAllStructureTypes (in category 'tests - image') ----- - testAllStructureTypes - - ExternalType allStructTypes do: [:type | - self - deny: type isAtomic; - deny: type isPointerType; - assert: type isStructureType; - deny: type isArrayType].!
Item was added: + TestCase subclass: #FFIImageTests + instanceVariableNames: '' + classVariableNames: '' + poolDictionaries: '' + category: 'FFI-Tests'!
Item was added: + ----- Method: FFIImageTests class>>checkPlatformChange (in category 'manual checks') ----- + checkPlatformChange + " + self checkPlatformChange. + " + | old new bench | + old := FFIPlatformDescription newCurrent name: 'TEST'. + new := FFIPlatformDescription newCurrent. + + self assert: [old ~= new]. + bench := [ExternalType platformChangedFrom: old to: new] bench. + Transcript showln: bench. + self debug: #test05TypeIntegrity. + !
Item was added: + ----- Method: FFIImageTests class>>checkTypeIntegrity (in category 'manual checks') ----- + checkTypeIntegrity + " + self checkTypeIntegrity. + " + ExternalType initializeFast. + self debug: #test05TypeIntegrity. + + ExternalType initialize. + self debug: #test05TypeIntegrity. + + ExternalType resetAllTypes. + self debug: #test05TypeIntegrity.!
Item was added: + ----- Method: FFIImageTests>>test01AllAtomicTypes (in category 'tests') ----- + test01AllAtomicTypes + + ExternalType allAtomicTypes do: [:type | + self + assert: type isAtomic; + deny: type isPointerType; + deny: type isStructureType; + deny: type isArrayType].!
Item was added: + ----- Method: FFIImageTests>>test02AllStructureTypes (in category 'tests') ----- + test02AllStructureTypes + + ExternalType allStructTypes do: [:type | + self + deny: type isAtomic; + deny: type isPointerType; + assert: type isStructureType; + deny: type isArrayType].!
Item was added: + ----- Method: FFIImageTests>>test03AllPointerTypes (in category 'tests') ----- + test03AllPointerTypes + + ExternalType allPointerTypes do: [:type | + self + deny: type isAtomic; + assert: type isPointerType; + deny: type isStructureType; + deny: type isArrayType].!
Item was added: + ----- Method: FFIImageTests>>test04AllArrayTypes (in category 'tests') ----- + test04AllArrayTypes + + ExternalType allArrayTypes do: [:type | + self + deny: type isAtomic; + deny: type isPointerType; + deny: type isStructureType; + assert: type isArrayType].!
Item was added: + ----- Method: FFIImageTests>>test05TypeIntegrity (in category 'tests') ----- + test05TypeIntegrity + + "ExternalType initialize." + + #(atomicTypesDo: structTypesDo: pointerTypesDo: arrayTypesDo: typeAliasTypesDo:) + do: [:enumerator | + ExternalType perform: enumerator with: [:type | + self assert: type compiledSpec notNil. + self assert: type byteAlignment notNil. + self assert: type asPointerType notNil. + self assert: type asNonPointerType notNil.]].!
packages@lists.squeakfoundation.org