compiler/tests/extras/PPCCompositeParserTest.st
changeset 538 16e8536f5cfb
parent 537 fb212e14d1f4
child 542 bb97dcbe2359
equal deleted inserted replaced
537:fb212e14d1f4 538:16e8536f5cfb
    27     ^ self == PPCCompositeParserTest.
    27     ^ self == PPCCompositeParserTest.
    28 ! !
    28 ! !
    29 
    29 
    30 !PPCCompositeParserTest class methodsFor:'utilities'!
    30 !PPCCompositeParserTest class methodsFor:'utilities'!
    31 
    31 
       
    32 generateTests
       
    33     "Regenerate all generated test cases"
       
    34 
       
    35     {
       
    36 
       
    37         PPExpressionGrammarTest .
       
    38 
       
    39         PPSmalltalkGrammarTests .
       
    40         PPSmalltalkParserTests .
       
    41 
       
    42 
       
    43     } do:[:each | self generateTestsFor: each ]
       
    44 
       
    45     "Created: / 07-09-2015 / 11:28:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
    46 !
       
    47 
    32 generateTestsFor: baseTestClass
    48 generateTestsFor: baseTestClass
    33     | compiledBaseTestClassName |
    49     | compiledBaseTestClassName |
    34 
    50 
    35     compiledBaseTestClassName := (baseTestClass name startsWith: 'PP') 
    51     compiledBaseTestClassName := (baseTestClass name startsWith: 'PP') 
    36                             ifTrue:[ 'PPC' , (baseTestClass name copyFrom: 3 to: baseTestClass name size) ]
    52                             ifTrue:[ 'PPC' , (baseTestClass name copyFrom: 3 to: baseTestClass name size) ]
    78         classVariableNames:''
    94         classVariableNames:''
    79         poolDictionaries:''
    95         poolDictionaries:''
    80         category: 'PetitCompiler-Extras-Tests-Misc'.
    96         category: 'PetitCompiler-Extras-Tests-Misc'.
    81 
    97 
    82     compiledUniversalTestClass compile: 
    98     compiledUniversalTestClass compile: 
    83 'compilerConfiguration
    99 'compiler
    84     ^ PPCConfiguration universal'
   100     ^ PPCCompiler newWithOptions: #( #tokenize: false ) '
    85     classified: 'accessing'.
   101     classified: 'accessing'.
    86     
   102     
    87                              
   103                              
    88     compiledTokenizedTestClass := compiledBaseTestClass subclass: (compiledBaseTestClassName , '_Tokenized') asSymbol
   104     compiledTokenizedTestClass := compiledBaseTestClass subclass: (compiledBaseTestClassName , '_Tokenized') asSymbol
    89         instanceVariableNames:''
   105         instanceVariableNames:''
    90         classVariableNames:''
   106         classVariableNames:''
    91         poolDictionaries:''
   107         poolDictionaries:''
    92         category: 'PetitCompiler-Extras-Tests-Misc'.
   108         category: 'PetitCompiler-Extras-Tests-Misc'.
    93 
   109 
    94     compiledTokenizedTestClass compile: 
   110     compiledTokenizedTestClass compile: 
    95 'compilerConfiguration
   111 'compiler
    96     ^ PPCConfiguration tokenizing'
   112     ^ PPCCompiler newWithOptions: #( #tokenize: false )'
    97     classified: 'accessing'.
   113     classified: 'accessing'.
    98 
   114 
    99     "Created: / 31-07-2015 / 07:26:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   115     "Created: / 31-07-2015 / 07:26:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   116     "Modified: / 07-09-2015 / 12:58:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   100 ! !
   117 ! !
   101 
   118 
   102 !PPCCompositeParserTest methodsFor:'accessing'!
   119 !PPCCompositeParserTest methodsFor:'accessing'!
   103 
   120 
   104 compiledParser
   121 compiledParser
   171     | time compiler |
   188     | time compiler |
   172 
   189 
   173     compiler := self compiler.
   190     compiler := self compiler.
   174     compiler options parserName: self compiledParserClassName.
   191     compiler options parserName: self compiledParserClassName.
   175     time := Time millisecondsToRun: [
   192     time := Time millisecondsToRun: [
   176         self petitParser compileUsingCompiler:compiler.
   193         compiler compile: self petitParser.
   177     ].
   194     ].
   178     Transcript show: self petitParserClass name ; show:' compiled in: '; show: time asString; show: 'ms'; cr.
   195     Transcript show: self petitParserClass name ; show:' compiled in: '; show: time asString; show: 'ms'; cr.
   179 
   196 
   180     "Created: / 29-07-2015 / 16:29:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   197     "Created: / 29-07-2015 / 16:29:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   181     "Modified: / 29-07-2015 / 18:40:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   198     "Modified: / 29-07-2015 / 18:40:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"