A potential source of the problem can be these two methods introduced
recently that break import/export of MSE files
in DudeMooseSmalltalkTest>>testMSEImportExport:
FAMIXSourcedEntity >>numberOfJavaNullChecks
<MSEProperty: #numberOfJavaNullChecks type: #Integer> <derived>
^self
lookUpPropertyNamed: #numberOfJavaNullChecks
computedAs: [
| nullCheckTextPatterns |
nullCheckTextPatterns := #('== null' '!= null' 'null ==' 'null
!=').
(self sourceText allRegexMatches: ( '|' join: nullCheckTextPatterns)) size ]
(The other one:
FAMIXSourcedEntity>>numberOfLinesOfCodeWithMoreThanOneCharacter)
With these methods in the image, doing MooseModel resetMeta shows the
keyNotFound 'Integer' error in the class dictionary of Fame and rightly
because FMMetaRepository does not know about Integer:
FMMetaRepository>>updateCache
nameDict := Dictionary new.
nameDict at: 'String' put: FM3 string.
nameDict at: 'Boolean' put: FM3 boolean.
nameDict at: 'Number' put: FM3 number.
nameDict at: 'Object' put: FM3 object.
classDict := Dictionary new.
classDict at: FM3 string class put: FM3 string.
classDict at: FM3 boolean class put: FM3 boolean.
classDict at: FM3 number class put: FM3 number.
classDict at: FM3 object class put: FM3 object.
self elements do: [ :each |
self updateCacheWith: each ]
A potential fix might be adding the Integer class to the Fame repo or
changing the Integer with the Number class in the problematic method. The
fix to this problem can resolve the failing build problem, IMO.
Another question: are derived properties exported to MSE?
regards.
Usman
On Mon, Mar 17, 2014 at 11:16 AM, Usman Bhatti <usman.bhatti(a)gmail.com>wrote;wrote:
Hi,
I'll have a look once the current build finishes. The problem might be
just a manifestation of something going wrong elsewhere. I have the same
problem related to keyNotFound in another build but the xml produced is
correct. I'm refering to this stack and I'll have a look at the test
failing:
[31mKeyNotFound: key 'Integer' not found in Dictionary
[0mDictionary>>errorKeyNotFound:
Dictionary>>at: in Block: [ self errorKeyNotFound: key ]
Dictionary>>at:ifAbsent:
Dictionary>>at:
MoosePragmaProcessor(FMPragmaProcessor)>>ensureClass: in Block: [ metaDict at: var
asString ]
Dictionary>>at:ifAbsent:
MoosePragmaProcessor(FMPragmaProcessor)>>ensureClass:
MoosePragmaProcessor(FMPragmaProcessor)>>resolveObjectReferences in Block: [ :prop
:value | prop type: (self ensureClass: val...etc...
IdentityDictionary(Dictionary)>>keysAndValuesDo: in Block: [ :assoc | aBlock value:
assoc key value: assoc va...etc...
IdentityDictionary(Dictionary)>>associationsDo: in Block: [ :each | each ifNotNil:
[ aBlock value: each ] ]
Array(SequenceableCollection)>>do:
IdentityDictionary(Dictionary)>>associationsDo:
IdentityDictionary(Dictionary)>>keysAndValuesDo:
MoosePragmaProcessor(FMPragmaProcessor)>>resolveObjectReferences
MoosePragmaProcessor(FMPragmaProcessor)>>run
MooseModel class>>metaBuilder:withProcessor:
MooseModel class>>metaBuilder:
MooseModel class>>metaTower
MooseModel class>>meta
MooseModel class>>importFrom:
MooseModel>>importFromMSEStream:
MooseSampleData>>readMSEString:
MooseSampleData>>initialize
MooseSampleData class(Behavior)>>new
MooseSampleData class(TestResource class)>>new
MooseSampleData class(TestResource class)>>makeAvailable
MooseSampleData class(TestResource class)>>isAvailable
HDTestReport>>setUp in Block: [ :each | ...
OrderedCollection>>do:
HDTestReport>>setUp
On Mon, Mar 17, 2014 at 6:24 AM, Tudor Girba <tudor(a)tudorgirba.com> wrote:
Hi,
I tried to look in the the failing build problem, but I could not solve
it.
Somehow the Moose-Tests-Core.xml is incomplete on the build server.
I tried to reproduce the problem locally, but I did not manage with this
code:
MooseTestCommandLineHandler activateWith: (CommandLineArguments
withArguments: {'--junit-xml-output'})
This should be the correspondent of:
./pharo $JOB_NAME.image moosetest --junit-xml-output
Could anyone else try as well?
Cheers,
Doru
--
www.tudorgirba.com
"Every thing has its own flow"
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev