[squeak-dev] The Trunk: Tests-ct.485.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Apr 30 17:51:15 UTC 2022


Christoph Thiede uploaded a new version of Tests to project The Trunk:
http://source.squeak.org/trunk/Tests-ct.485.mcz

==================== Summary ====================

Name: Tests-ct.485
Author: ct
Time: 30 April 2022, 7:50:59.794971 pm
UUID: a69bcff7-8786-c948-b8d3-9a0472bebbda
Ancestors: Tests-mt.484

Documents a parser bug during removal of empty temp declarations.

=============== Diff against Tests-mt.484 ===============

Item was added:
+ ----- Method: CompilerExceptionsTest>>basicCompile:do: (in category 'private') -----
+ basicCompile: sourceString do: aBlock
+ 
+ 	| result |
+ 	originalText := text := sourceString.
+ 	previousSelection := originalSelection := 1 to: text size + 1.
+ 	selectionInterval := nil.
+ 	result := aBlock value.
+ 	result ifNil: [^ self].
+ 	selectionInterval := originalSelection.!

Item was changed:
  ----- Method: CompilerExceptionsTest>>compile: (in category 'private') -----
+ compile: sourceCode
- compile: sourceString
  
+ 	sourceCode isBlock ifTrue: [^ sourceCode value].
+ 	
+ 	^ self basicCompile: sourceCode do:
+ 		[self class
+ 			compileSilently: text
+ 			classified: 'generated'
+ 			notifying: self]!
- 	| result |
- 	originalText := text := sourceString.
- 	previousSelection := originalSelection := 1 to: text size + 1.
- 	selectionInterval := nil.
- 	result := self class
- 		compileSilently: text
- 		classified: 'generated'
- 		notifying: self.
- 	result ifNil: [^ self].
- 	selectionInterval := originalSelection.!

Item was added:
+ ----- Method: CompilerExceptionsTest>>compileNoPattern: (in category 'private') -----
+ compileNoPattern: sourceString
+ 
+ 	^ self basicCompile: sourceString do:
+ 		[self class newCompiler
+ 			compileNoPattern: text
+ 			in: self class
+ 			notifying: self
+ 			ifFail: []]!

Item was changed:
  ----- Method: CompilerExceptionsTest>>testUnusedVariable (in category 'tests') -----
  testUnusedVariable
  
  	self 
  		compiling: 'griffle | goo | ^nil'
  		shouldRaise: UnusedVariable
  		andSelect: [self text]
  		testing: {
  			[:ex | ex resume] -> [self assertCanceled].
  			false -> [self assertSucceeded].
  			true -> [self assertSucceeded: 'griffle\s*\^nil' asRegex] }.
+ 	self 
+ 		compiling: [self compileNoPattern: '| goo|^ nil' "note there is no space between the variable and the bar"]
+ 		shouldRaise: UnusedVariable
+ 		andSelect: [self text]
+ 		testing: { true -> [self assertSucceeded: '\s*\^ nil' asRegex] }.
  	self
  		compiling: 'griffle ^[ | goo | ]'
  		shouldRaise: UnusedVariable
  		andSelect: [self text]
  		testing: {
  			[:ex | ex resume] -> [self assertCanceled].
  			false -> [self assertSucceeded].
  			true -> [self assertSucceeded: 'griffle \^\[\s*\]' asRegex] }.!



More information about the Squeak-dev mailing list