Hi Doru,
thanks really a lot, now the problem is fixed indeed. The failing tests you are referring to have all the common problem that either the edge it is not assign to the node or the node has a different edge inside:

Ex.
testInnerEdgeContainsPoint
    | nodes domainNodes assoc edge edgeBound root |
   

    view shape rectangle size: 50.
    nodes :=view nodes: #(1 2) forEach:[:e |
        view nodes: #(3 4).
        view interaction
            item: 'inspect' action: #inspect.
        edge := view edge: 3->4 from: #key to: #value].

    window := view open.
   
    edgeBound := edge shape computeBoundsFor: edge.

    self assert: (edgeBound = ( 30@12 corner: 70@12)).

    "--------"
    "Check how many elements"
    self assert: (view root allEdges size = 2).
    self assert: (view root allNodes size = 6).
    self assert: (view root elementsToDisplay size = 8).
    "--------"


    "--------"
    "MORoot>>elementAt:"
    root := nodes first root.
    self assert: (root isRoot).
    self assert: (root elementAt: (edge shape computeBoundsFor: edge) center) == edge.
    "--------"

in this case "(root elementAt: (edge shape computeBoundsFor: edge) center)" return an edge which is the same as "edge" (3->4) but it is a different object. A comment in elementAt:ifNone: says:  "Answer the element at aPoint or evaluate aBlock if none. Note that this implementation assumes that children are always fully contained within their owner and is therefore very efficient."

I think we should not fix the test but this method although I don't know how.

Cheers,
Fabrizio

2012/5/26 Tudor Girba <tudor@tudorgirba.com>
Hi Fabrizio.

Thanks for helping me reproduce the problem.

It should be fixed now.

However, there are still some red tests because they assume the old wrong behavior of assigning edges to an owner node.

Cheers,
Doru


On 26 May 2012, at 15:28, Fabrizio Perin wrote:

> Hi Doru,
> Here is the code you were working on:
>
> view := MOViewRenderer new.
> view nodes: #(2) forEach: [:each |
>       view shape label.
>       view node: each* 10.
>       view shape label.
>       view node: (each * 10 + 1).
>       view treeLayout.
>       ].
> view edgesFromAssociations: {"10->20.  10 -> 11 ." 20->21}.
> view open.
>
> Cheers,
> Fabrizio

--
www.tudorgirba.com

"It's not what we do that matters most, it's how we do it."
_______________________________________________
Moose-dev mailing list
Moose-dev@iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev