forked from Metacello/metacello
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request Metacello#396 from dalehenrich/issue_395
Fix Issue 395
- Loading branch information
Showing
21 changed files
with
173 additions
and
58 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Empty file.
9 changes: 9 additions & 0 deletions
9
...kage/MetacelloToolBoxBaselineConstructor.class/instance/evaluateBaselineMethodSection..st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
private | ||
evaluateBaselineMethodSection: methodSection | ||
| versionSpec | | ||
versionSpec := self project versionSpec. | ||
methodSection versionSpec: versionSpec. | ||
currentSection := methodSection. | ||
self with: versionSpec during: methodSection block. | ||
methodSection methodSections | ||
do: [ :ms | self evaluateBaselineMethodSection: ms ] |
7 changes: 7 additions & 0 deletions
7
...e.package/MetacelloToolBoxBaselineConstructor.class/instance/extractBaselinePragmaFor..st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
pragma extraction | ||
extractBaselinePragmaFor: aClass | ||
| pragmas | | ||
pragmas := Pragma allNamed: #'baseline' in: aClass. | ||
pragmas isEmpty | ||
ifTrue: [ ^ self error: 'No #baseline pragma found' ]. | ||
^ pragmas first |
3 changes: 3 additions & 0 deletions
3
...e.package/MetacelloToolBoxBaselineConstructor.class/instance/extractMethodSectionsFor..st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
extraction | ||
extractMethodSectionsFor: aBaselineClass | ||
self shouldNotImplement |
7 changes: 7 additions & 0 deletions
7
...kage/MetacelloToolBoxBaselineConstructor.class/instance/extractMethodSectionsForClass..st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
extraction | ||
extractMethodSectionsForClass: aBaselineClass | ||
| pragma | | ||
pragma := self extractBaselinePragmaFor: aBaselineClass. | ||
self evaluatePragma: pragma. | ||
self methodSections | ||
do: [ :methodSection | self evaluateBaselineMethodSection: methodSection ] |
8 changes: 8 additions & 0 deletions
8
...ry/Metacello-Core.package/MetacelloToolBoxBaselineConstructor.class/methodProperties.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
{ | ||
"class" : { | ||
}, | ||
"instance" : { | ||
"evaluateBaselineMethodSection:" : "dkh 05/21/2016 20:27", | ||
"extractBaselinePragmaFor:" : "dkh 05/21/2016 20:22", | ||
"extractMethodSectionsFor:" : "dkh 05/21/2016 20:34", | ||
"extractMethodSectionsForClass:" : "dkh 05/21/2016 20:35" } } |
14 changes: 14 additions & 0 deletions
14
repository/Metacello-Core.package/MetacelloToolBoxBaselineConstructor.class/properties.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
{ | ||
"category" : "Metacello-Core-Constructors", | ||
"classinstvars" : [ | ||
], | ||
"classvars" : [ | ||
], | ||
"commentStamp" : "", | ||
"instvars" : [ | ||
], | ||
"name" : "MetacelloToolBoxBaselineConstructor", | ||
"pools" : [ | ||
], | ||
"super" : "MetacelloToolBoxConstructor", | ||
"type" : "normal" } |
Large diffs are not rendered by default.
Oops, something went wrong.
22 changes: 22 additions & 0 deletions
22
...sMCA.package/MetacelloToolBoxAPITestCase.class/instance/baselineOfModifiedSourceString.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
private BaselineOf | ||
baselineOfModifiedSourceString | ||
^ 'baseline: spec | ||
<baseline> | ||
spec for: #''common'' do: [ | ||
spec project: ''MetacelloTestConfigurationOfFoo'' with: [ | ||
spec | ||
className: ''MetacelloTestConfigurationOfFoo''; | ||
versionString: #''bleedingEdge''; | ||
repository: ''dictionary://Metacello_Dev_Cycle_Repository'' ]. | ||
spec | ||
package: ''GeauxFaux'' with: [ | ||
spec requires: #(''MetacelloTestConfigurationOfFoo'' ''GoferFoo'' ). ]; | ||
package: ''GeauxBeau'' with: [ | ||
spec requires: #(''GeauxFaux'' ). ]; | ||
package: ''GoferFoo''. | ||
spec | ||
group: ''default'' with: #(''Core'' ); | ||
group: ''Core'' with: #(''GeauxFaux'' ); | ||
group: ''Tests'' with: #(''GeauxBeau'' ); | ||
group: ''Core Tests'' with: #(''Core'' ''Tests'' ). ]. | ||
' |
20 changes: 20 additions & 0 deletions
20
...Metacello-TestsMCA.package/MetacelloToolBoxAPITestCase.class/instance/createBaselineOf.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
private BaselineOf | ||
createBaselineOf | ||
(MetacelloToolBox baselineNamed: self baselineName asString) | ||
createBaselineOfMethod: 'baseline:' inCategory: 'baseline'; | ||
addBaselineOfSection: #'common' | ||
requiredProjects: #('MetacelloTestConfigurationOfFoo') | ||
packages: #('GeauxFaux' 'GeauxBeau') | ||
repositories: | ||
{('MetacelloTestConfigurationOfFoo' | ||
-> {('dictionary://' , self repositoryName asString)})} | ||
dependencies: | ||
{('GeauxFaux' -> #('MetacelloTestConfigurationOfFoo')). | ||
('GeauxBeau' -> #('GeauxFaux'))} | ||
groups: | ||
{('default' -> #('Core')). | ||
('Core' -> #('GeauxFaux')). | ||
('Tests' -> #('GeauxBeau')). | ||
('Core Tests' -> #('Core' 'Tests'))} | ||
versionSpecsDo: [ :versionSpec | ]; | ||
commitBaselineOfMethod |
28 changes: 2 additions & 26 deletions
28
...y/Metacello-TestsMCA.package/MetacelloToolBoxAPITestCase.class/instance/testBaselineOf.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,7 @@ | ||
tests BaselineOf | ||
testBaselineOf | ||
[ | ||
(MetacelloToolBox baselineNamed: self baselineName asString) | ||
createBaselineOfMethod: 'baseline:' inCategory: 'baseline'; | ||
addBaselineOfSection: #'common' | ||
requiredProjects: #('MetacelloTestConfigurationOfFoo') | ||
packages: #('GeauxFaux' 'GeauxBeau') | ||
repositories: | ||
{('MetacelloTestConfigurationOfFoo' | ||
-> {('dictionary://' , self repositoryName asString)})} | ||
dependencies: | ||
{('GeauxFaux' -> #('MetacelloTestConfigurationOfFoo')). | ||
('GeauxBeau' -> #('GeauxFaux'))} | ||
groups: | ||
{('default' -> #('Core')). | ||
('Core' -> #('GeauxFaux')). | ||
('Tests' -> #('GeauxBeau')). | ||
('Core Tests' -> #('Core' 'Tests'))} | ||
versionSpecsDo: [ :versionSpec | ]; | ||
commitBaselineOfMethod. | ||
self createBaselineOf. | ||
self | ||
assert: | ||
((Smalltalk at: self baselineName) sourceCodeAt: #'baseline:') | ||
= self baselineOfSourceString ] | ||
on: Error | ||
do: [ :ex | | ||
Transcript | ||
cr; | ||
show: 'testBaselineOf: ' , ex description. | ||
ex pass ] | ||
= self baselineOfSourceString |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
37 changes: 20 additions & 17 deletions
37
...-TestsMCA.package/MetacelloToolBoxAPITestCase.class/instance/testComplexModifyBaseline.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,22 @@ | ||
tests | ||
testComplexModifyBaseline | ||
self createComplex11Baseline. | ||
MetacelloToolBox | ||
modifyVersion: '1.1-baseline' | ||
section: #common | ||
for: self configurationName asString | ||
repository: nil | ||
requiredProjects: #() | ||
packages: #('GoferFoo') | ||
dependencies: {'GeauxFaux' -> #('GoferFoo').} | ||
includes: #() | ||
files: #() | ||
repositories: #() | ||
preLoadDoIts: #() | ||
postLoadDoIts: #() | ||
supplyingAnswers: #() | ||
groups: #(). | ||
self assert: ((Smalltalk at: self configurationName) sourceCodeAt: #baseline11:) = self complexBaseline11SourceString2 | ||
self createComplex11Baseline. | ||
MetacelloToolBox | ||
modifyVersion: '1.1-baseline' | ||
section: #'common' | ||
for: self configurationName asString | ||
repository: nil | ||
requiredProjects: #() | ||
packages: #('GoferFoo') | ||
dependencies: {('GeauxFaux' -> #('GoferFoo'))} | ||
includes: #() | ||
files: #() | ||
repositories: #() | ||
preLoadDoIts: #() | ||
postLoadDoIts: #() | ||
supplyingAnswers: #() | ||
groups: #(). | ||
self | ||
assert: | ||
((Smalltalk at: self configurationName) sourceCodeAt: #'baseline11:') | ||
= self complexBaseline11SourceString2 |
24 changes: 24 additions & 0 deletions
24
...cello-TestsMCA.package/MetacelloToolBoxAPITestCase.class/instance/testModifyBaselineOf.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
tests BaselineOf | ||
testModifyBaselineOf | ||
| x | | ||
self createBaselineOf. | ||
(MetacelloToolBox baselineNamed: self baselineName asString) | ||
modifyBaselineOf; | ||
modifySection: #'common' asMetacelloAttributePath | ||
repository: nil | ||
requiredProjects: #() | ||
packages: #('GoferFoo') | ||
dependencies: {('GeauxFaux' -> #('GoferFoo'))} | ||
includes: #() | ||
files: #() | ||
repositories: #() | ||
preLoadDoIts: #() | ||
postLoadDoIts: #() | ||
supplyingAnswers: #() | ||
groups: #() | ||
versionSpecsDo: [ :versionSpec | true ]; | ||
commitBaselineOfMethod. | ||
self | ||
assert: | ||
(x := (Smalltalk at: self baselineName) sourceCodeAt: #'baseline:') | ||
= self baselineOfModifiedSourceString |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
17 changes: 17 additions & 0 deletions
17
repository/Metacello-ToolBox.package/MetacelloToolBox.class/instance/modifyBaselineOf.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
api-configuration | ||
modifyBaselineOf | ||
| baselineClass constructor pragma baseline | | ||
baselineClass := project configuration class. | ||
baseline := baselineClass new. | ||
constructor := MetacelloToolBoxBaselineConstructor new | ||
configuration: project configuration class new; | ||
yourself. | ||
pragma := constructor extractBaselinePragmaFor: baselineClass. | ||
constructor extractMethodSectionsForClass: baselineClass. | ||
methodSpec := MetacelloBaselineOfMethodSpec new | ||
project: project; | ||
selector: pragma selector; | ||
category: (baselineClass whichCategoryIncludesSelector: pragma selector); | ||
yourself. | ||
constructor methodSections | ||
do: [ :methodSection | self methodSpec methodSections add: methodSection ] |
6 changes: 6 additions & 0 deletions
6
...olBox.package/MetacelloToolBox.class/instance/modifyBaselineOfMethodForVersionSpecsDo..st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
api-configuration | ||
modifyBaselineOfMethodForVersionSpecsDo: aBlock | ||
^ self | ||
updateBaselineOfMethodForProjects: false | ||
updatePackages: false | ||
versionSpecsDo: aBlock |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.