On 23 November 2012 10:41, Frank Shearar frank.shearar@gmail.com wrote:
On 21 November 2012 21:20, H. Hirzel hannes.hirzel@gmail.com wrote:
As a reminder (for myself or somebody else..) by reactivating this thread:
PetitParser needs to be retested if it loads fine in Squeak 4.4...
Agreed. One possible solution is to dump PetitParser into a filetree repository on github and use Dale Henrich's builderCI. You (not Hannes necessarily, but whoever does this) could use https://github.com/frankshearar/Control as a guide on how to set things up. That also has the side benefit of letting Travis-CI do the work, at the cost of needing to keep the filetree repository in sync with the canonical PetitParser repository. Given the rate of change in that repo, that shouldn't be too hard; PP is now quite well beaten upon.
I should add: PP's Smalltalk parser WILL break on 4.4 because PP uses the host system to parse numbers. In Pharo, NumberParser parses only Smalltalk numbers; in Squeak ExtendedNumberParser accepts things like "1." as a number.
Nicolas and I have done some work towards fixing this, and I can't recall off the top of my head where that stands.
frank
frank
--Hannes
On 8/31/12, Dale Henrichs dhenrich@vmware.com wrote:
----- Original Message ----- | From: "Frank Shearar" frank.shearar@gmail.com | | I'm aiming to, at some point in the very near future, implement some | kind of minimal CI infrastructure that could take a ConfigurationOf | and run its tests. I was hoping builderCI could do it, but it's quite | a complicated beast.
Frank,
I think the interesting bit in builderCI that you're looking for to construct the test suite is probably this chunk of code that leverages the Metacello scripting api:
| suite configurationClassNameList | configurationClassNameList := #( "list of configuration classes" ). suite := TestCase suiteClass named: configurationClassNameList printString, ' Test Suite'. configurationClassNameList do: [ :className | ((MetacelloProjectRegistration registrationForClassNamed: className ifAbsent: [ self error: className printString , ' not registered (loaded)' ]) currentlyLoadedClassesInProject select: [ :cl | cl inheritsFrom: TestCase ]) do: [ :cl | cl isAbstract ifFalse: [ suite addTest: cl buildSuiteFromSelectors ] ] ].
Dale