Andreas Raab uploaded a new version of Tests to project The Trunk:
http://source.squeak.org/trunk/Tests-ar.92.mcz ==================== Summary ==================== Name: Tests-ar.92 Author: ar Time: 5 September 2010, 11:38:08.447 am UUID: deab0aa7-267f-b346-ae7f-6ca5cb46e5db Ancestors: Tests-ar.91 Update dependency tests to reflect latest changes. =============== Diff against Tests-ar.91 =============== Item was changed: ----- Method: PackageDependencyTest>>testCompression (in category 'tests') ----- testCompression self testPackage: 'Compression' dependsExactlyOn: #( Collections Exceptions Files Graphics Kernel Multilingual SUnit System 'ToolBuilder-Kernel' - Tools ).! Item was changed: ----- Method: PackageDependencyTest>>testCollections (in category 'tests') ----- testCollections self testPackage: 'Collections' dependsExactlyOn: #( Compiler Kernel - Compression Exceptions Files Graphics Multilingual System 'ToolBuilder-Kernel' ).! Item was changed: ----- Method: PackageDependencyTest>>testTrueType (in category 'tests') ----- testTrueType self testPackage: 'TrueType' dependsExactlyOn: #( Collections Balloon Exceptions Files Graphics Kernel Morphic Multilingual System 'ToolBuilder-Kernel' - Tools ).! Item was changed: ----- Method: PackageDependencyTest>>testSound (in category 'tests') ----- testSound self testPackage: 'Sound' dependsExactlyOn: #( Collections Balloon Files Graphics Kernel Morphic MorphicExtras Network System 'ToolBuilder-Kernel' - Tools ).! Item was changed: ----- Method: PackageDependencyTest>>testFiles (in category 'tests') ----- testFiles self testPackage: 'Files' dependsExactlyOn: #( Collections Compression Exceptions Graphics Kernel Multilingual - Network System 'ToolBuilder-Kernel' - Tools ).! Item was changed: ----- Method: PackageDependencyTest>>testKernel (in category 'tests') ----- testKernel self testPackage: 'Kernel' dependsExactlyOn: #( Collections Compiler Compression Exceptions Files Graphics - Morphic MorphicExtras Multilingual System 'ToolBuilder-Kernel' Tools Traits ).! Item was changed: ----- Method: PackageDependencyTest>>testGraphics (in category 'tests') ----- testGraphics self testPackage: 'Graphics' dependsExactlyOn: #( Collections Compression Exceptions Files Kernel Morphic - MorphicExtras Multilingual - Network System 'ToolBuilder-Kernel' - Tools TrueType ).! Item was changed: ----- Method: PackageDependencyTest>>testPackage:dependsExactlyOn: (in category 'utilities') ----- testPackage: pkgName dependsExactlyOn: pkgList "Ensure that the package with the given name depends only on the packages in pkgList. NOTE: If you use this for fixing dependencies, classDeps includes the classes and users from the package(s) not declared as dependents. Basically, you need to fix all the references in classDeps to make the test pass." | classDeps pi pkgDeps | classDeps := IdentityDictionary new. pi := PackageOrganizer default packageNamed: pkgName ifAbsent:[^self]. "unloaded" pi classes do:[:pkgClass| (classDeps at: (pkgClass superclass ifNil:[ProtoObject]) ifAbsentPut:[OrderedCollection new]) add: pkgClass name, ' superclass'. ]. pi methods do:[:mref| | cm | cm := mref compiledMethod. 1 to: cm numLiterals do:[:i| | lit | ((lit := cm literalAt: i) isVariableBinding and:[lit value isBehavior]) ifTrue:[(classDeps at: lit value ifAbsentPut:[OrderedCollection new]) add: cm methodClass asString, '>>', cm selector]]]. pkgDeps := Dictionary new. classDeps keys do:[:aClass| | pkg | pkg := PackageOrganizer default packageOfClass: aClass ifNone:[nil]. pkg ifNil:[ Transcript cr; show: 'WARNING: No package for ', aClass. (classDeps removeKey: aClass) do:[:each| Transcript crtab; show: each]. ] ifNotNil:[ (pkgDeps at: pkg name ifAbsentPut:[OrderedCollection new]) add: aClass. ]. ]. (pkgDeps removeKey: pkgName ifAbsent:[#()]) do:[:aClass| classDeps removeKey: aClass ifAbsent:[]]. pkgList do:[:pkg| + self assert: (pkgDeps includesKey: pkg) + description: pkgName, ' no longer depends on ', pkg. - self assert: (pkgDeps includesKey: pkg). (pkgDeps removeKey: pkg ifAbsent: [#()]) do:[:aClass| classDeps removeKey: aClass ifAbsent:[]]. ]. classDeps keysAndValuesDo:[:class :deps| Transcript cr; show: class name, ' dependencies:'. deps do:[:each| Transcript crtab; show: each]. ]. + self assert: pkgDeps isEmpty + description: pkgName, ' now depends on ', pkgDeps. - self assert: pkgDeps isEmpty. ! |
Free forum by Nabble | Edit this page |