we wrote this test
testHasExactlySamePropertiesThan
"self debug: #testHasExactlySamePropertiesThan"
| cp |
"I should have the same entity than a copy of myself"
self assert: (self nodeClass hasExactlySamePropertiesThan: self
nodeClass).
self assert: (self nodeClass hasExactlySamePropertiesThan: self
nodeClass veryDeepCopy).
the previous assertion does not work because the incoming references are
indeed not pointing to the copy so this is correct that it does not work.
cp := self model entityNamed: LANOutputServer mooseName.
self deny: (self nodeClass hasExactlySamePropertiesThan: cp).
cp := self nodeClass veryDeepCopy.
cp instVarNamed: 'state' put: (cp instVarNamed: 'state') veryDeepCopy.
cp propertyNamed: #numberOfLinesOfCode put: 12000.
"This property is described as a fame property on the entity kind but
not existing on the copy
so two entities should have different properties"
self deny: (self nodeClass hasExactlySamePropertiesThan: cp).
cp := self nodeClass veryDeepCopy.
cp instVarNamed: 'state' put: (cp instVarNamed: 'state') veryDeepCopy.
cp propertyNamed: #NOS ifAbsentPut: 12000.
"This property is described but it does not exist on the entity kind
so two entities should have different properties"
self deny: (self nodeClass hasExactlySamePropertiesThan: cp).
Now is there a way to only access the values that are stored in the
properties?
Because right now we are using
allDeclaredProperties
and they include all the instance variable as well.
--
Andre Hora
Hi guys
We wrote
testHasExactlySamePropertiesThan
"p"
| cp |
"I should have the same entity than a copy of myself"
self assert: (self nodeClass hasExactlySamePropertiesThan: self
nodeClass deepCopy).
cp := self nodeClass deepCopy.
cp propertyNamed: #NOP ifAbsentPut: 12000.
"This property is described as a fame property but not existing on the
copy
so two entities should have different properties"
self deny: (self nodeClass hasExactlySamePropertiesThan: cp).
and deepCopy loops on a FMValueLink
--
Andre Hora
Hi guys
we are hacking with andre some tests for the exporter.
Now we would like to compare two FAMIX entities and in particular their
properties here are a bunch of questions we got
- why there is no class comment on MSEDefaultState and friends?
what is the difference between a property and an attributes
- how can I get all the properties defined on an entity?
there is allDefinedProperties
Now how can I apply a given FMDescription of a property obtained from the
the allDefinedProperties to a given entity
I was thinking about
aDescription valueFor: anEntity
Stef and Andre
--
Andre Hora
Hi
We are checking how we can make the FMRepositoryVisitor parametrized by an
exporting context attached to a model.
However the Repository only gets the model entities and not the model.
This is a pity because we lack information held in the model
(sourceLanguage, model versions, tags, who, what and the rest....)
export: aModel withMetamodel: aMetamodel to: aStream
| tower repository |
tower := FMCompleteTower new.
tower metaMetamodel: aMetamodel metamodel.
tower metamodel: aMetamodel.
tower model: (repository := (FMRepository with: aMetamodel) addAll:
aModel entities).
tower model exportOn: aStream
What is the constraint that made that FMRepository does not get a model but
just a list of entities?
We could pass the context to a repository but it seems better to pass a
model.
What do you think?
Stef and Andre
--
Andre Hora
Updates:
Labels: -Milestone-4.2
Comment #2 on issue 273 by tudor.gi...(a)gmail.com: The Morphic Glamour
should update the selectedText in a TextPresentation
http://code.google.com/p/moose-technology/issues/detail?id=273
(No comment was entered for this change.)
Hi guys
I would like your input and (also help) for the following.
I would like to have a web servers with some selected case studies for a show room on internet
We should have it for December. Now I think that we should join forces.
I think that we could take
We take one or two projects:
ArgoUML
Papyrus
Seaside
We could have an apache rewrite rule to dispatch to the right image
We create two specific images that contain models
for argoUML multiple versions
for papyrus a model with a limited amount of entities
for Moose itself/seaside so that we get testcoverage....
Then we propose different analysis
- metrics
- polymetric views
- eyeScope
- cycle identification
- distribution map (may of commits or something)
- evolution hierarchy (cf the paper of girba on using Hismo)
- reports
Usman this should correspond to your ideas of scenario.
So let me know what you think. It would be beneficial for the complete community so we need help.
Stef
Status: New
Owner: tudor.gi...(a)gmail.com
Labels: Type-Defect Priority-High Component-Glamour Milestone-4.3
New issue 492 by tudor.gi...(a)gmail.com: Glamour browsers do not release all
subscriptions to announcer objects
http://code.google.com/p/moose-technology/issues/detail?id=492
I noticed that in some complex updating between panels, using an external
announcer, some of the update subscriptions were not removed when the
browser is closed. I debugged a little and I founded that this
implementation:
GLMUpdateAction>>unregisterFromAllAnnouncements
announcerObjects ifNotNil: [
announcerObjects do: [:each |
each unsubscribe: self ] ]
is bugged, because if announcerObjects are not previously computed (and in
some cases that's what happens), the subscription is not removed.
This implementation (just using the accessor instead the direct object),
solves the problem (but I don't know is it's a right fix, and it should be
a fix in other place)
GLMUpdateAction>>unregisterFromAllAnnouncements
self announcerObjects ifNotNil: [ :objects |
objects do: [:each |
each unsubscribe: self ] ]
Cheers,
Esteban
Hi Cyrille,
I saw that you added a GLMColor to provide an abstract representation of a Color both for Morphic and for CSS. It's good that you are tackling this problem, but this is not the way to go.
The problem is that it is confusing to have to provide a new GLMColor class for every special color. Color is already a full and quite powerful description of a color.
What we need is a convertor. There already are a few:
- Color>>printHtmlString (in the base image)
- Color>>asJavascript (in the Seaside image)
The only thing that is currently missing is a proper translation of "Color transparent", but this can be done easily in a Color>>glmAsHtmlColor.
Cheers,
Doru
--
www.tudorgirba.com
"Not knowing how to do something is not an argument for how it cannot be done."