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@gmail.com> 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@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

--

"Every thing has its own flow"

_______________________________________________
Moose-dev mailing list
Moose-dev@iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev