# HG changeset patch # User Claus Gittinger # Date 1393976020 -3600 # Node ID 39a00be691927fa3c78221486a3ddd38331003f1 # Parent 7308816ce61038e2e1d5fedec9a5c15fd9e3b179 class: PPGrammarRefactoringTest changed:5 methods diff -r 7308816ce610 -r 39a00be69192 gui/tests/PPGrammarRefactoringTest.st --- a/gui/tests/PPGrammarRefactoringTest.st Tue Mar 04 22:20:50 2014 +0100 +++ b/gui/tests/PPGrammarRefactoringTest.st Wed Mar 05 00:33:40 2014 +0100 @@ -52,65 +52,65 @@ ! testRemoveParser - self performRefactoring: (PPRemoveParserRefactoring onClass: PPArithmeticParser). - self assert: self changes size = 1. - self assert: self changes first class = RBRemoveClassChange. - self assert: self changes first changeClassName = 'PPArithmeticParser' + self performRefactoring: (PPRemoveParserRefactoring onClass: PPArithmeticParser). + self assert: self changes size = 1. + self assert: self changes first class = RemoveClassChange. + self assert: self changes first changeClassName = 'PPArithmeticParser' ! ! !PPGrammarRefactoringTest methodsFor:'testing-productions'! testDefineProduction - self performRefactoring: (PPDefineProdcutionRefactoring - onClass: PPArithmeticParser - source: 'function ^ #any plus , $( , $) ==> [ :e | 0 ]' - protocols: (Array with: #productions)). - self assert: self changes size = 2. - self assert: self changes first class = RBAddInstanceVariableChange. - self assert: self changes first variable = 'function'. - self assert: self changes last class = RBAddMethodChange. - self assert: self changes last parseTree = (RBParser parseMethod: 'function ^ #any asParser plus , $( asParser , $) asParser ==> [ :e | 0 ]') + self performRefactoring: (PPDefineProdcutionRefactoring + onClass: PPArithmeticParser + source: 'function ^ #any plus , $( , $) ==> [ :e | 0 ]' + protocols: (Array with: #productions)). + self assert: self changes size = 2. + self assert: self changes first class = AddInstanceVariableChange. + self assert: self changes first variable = 'function'. + self assert: self changes last class = AddMethodChange. + self assert: self changes last parseTree = (RBParser parseMethod: 'function ^ #any asParser plus , $( asParser , $) asParser ==> [ :e | 0 ]') ! testExtractProduction - self performRefactoring: (PPExtractProdcutionRefactoring - onClass: PPArithmeticParser - production: #addition - interval: (36 to: 60) - to: #plusOrMinus). - self assert: self changes size = 3. - self assert: self changes first class = RBAddInstanceVariableChange. - self assert: self changes first variable = 'plusOrMinus'. - self assert: self changes second class = RBAddMethodChange. - self assert: self changes second parseTree = (RBParser parseMethod: 'plusOrMinus ^ $+ asParser / $- asParser'). - self assert: self changes last class = RBAddMethodChange. - self assert: self changes last parseTree = (RBParser parseMethod: 'addition ^ (factors separatedBy: plusOrMinus trim) foldLeft: [ :a :op :b | a perform: op asSymbol with: b ]') + self performRefactoring: (PPExtractProdcutionRefactoring + onClass: PPArithmeticParser + production: #addition + interval: (36 to: 60) + to: #plusOrMinus). + self assert: self changes size = 3. + self assert: self changes first class = AddInstanceVariableChange. + self assert: self changes first variable = 'plusOrMinus'. + self assert: self changes second class = AddMethodChange. + self assert: self changes second parseTree = (RBParser parseMethod: 'plusOrMinus ^ $+ asParser / $- asParser'). + self assert: self changes last class = AddMethodChange. + self assert: self changes last parseTree = (RBParser parseMethod: 'addition ^ (factors separatedBy: plusOrMinus trim) foldLeft: [ :a :op :b | a perform: op asSymbol with: b ]') ! testRemoveProduction - self performRefactoring: (PPRemoveProdcutionRefactoring - onClass: PPArithmeticParser - production: #addition). - self assert: self changes size = 2. - self assert: self changes first class = RBRemoveMethodChange. - self assert: self changes first selector = #addition. - self assert: self changes last class = RBRemoveInstanceVariableChange. - self assert: self changes last variable = 'addition' + self performRefactoring: (PPRemoveProdcutionRefactoring + onClass: PPArithmeticParser + production: #addition). + self assert: self changes size = 2. + self assert: self changes first class = RemoveMethodChange. + self assert: self changes first selector = #addition. + self assert: self changes last class = RemoveInstanceVariableChange. + self assert: self changes last variable = 'addition' ! testRenameProduction - self performRefactoring: (PPRenameProdcutionRefactoring - onClass: PPArithmeticParser - rename: #addition - to: #add). - self assert: self changes size = 3. - self assert: self changes first class = RBRenameInstanceVariableChange. - self assert: self changes first oldName = 'addition'. - self assert: self changes first newName = 'add'. - self assert: self changes second class = RBAddMethodChange. - self assert: self changes second parseTree = (RBParser parseMethod: 'add ^ (factors separatedBy: ($+ asParser / $- asParser) trim) foldLeft: [ :a :op :b | a perform: op asSymbol with: b ]'). - self assert: self changes last class = RBRemoveMethodChange. - self assert: self changes last selector = #addition + self performRefactoring: (PPRenameProdcutionRefactoring + onClass: PPArithmeticParser + rename: #addition + to: #add). + self assert: self changes size = 3. + self assert: self changes first class = RenameInstanceVariableChange. + self assert: self changes first oldName = 'addition'. + self assert: self changes first newName = 'add'. + self assert: self changes second class = AddMethodChange. + self assert: self changes second parseTree = (RBParser parseMethod: 'add ^ (factors separatedBy: ($+ asParser / $- asParser) trim) foldLeft: [ :a :op :b | a perform: op asSymbol with: b ]'). + self assert: self changes last class = RemoveMethodChange. + self assert: self changes last selector = #addition ! ! !PPGrammarRefactoringTest methodsFor:'utilities'! @@ -123,10 +123,10 @@ !PPGrammarRefactoringTest class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/goodies/petitparser/gui/tests/PPGrammarRefactoringTest.st,v 1.1 2014-03-04 21:16:20 cg Exp $' + ^ '$Header: /cvs/stx/stx/goodies/petitparser/gui/tests/PPGrammarRefactoringTest.st,v 1.2 2014-03-04 23:33:40 cg Exp $' ! version_CVS - ^ '$Header: /cvs/stx/stx/goodies/petitparser/gui/tests/PPGrammarRefactoringTest.st,v 1.1 2014-03-04 21:16:20 cg Exp $' + ^ '$Header: /cvs/stx/stx/goodies/petitparser/gui/tests/PPGrammarRefactoringTest.st,v 1.2 2014-03-04 23:33:40 cg Exp $' ! !