moosetechnology / MooseIDE

New Tools for Moose
MIT License
8 stars 19 forks source link

Fix #1070: Propagate from popup menu respects chosen buses #1080

Closed Gabriel-Darbord closed 4 months ago

Gabriel-Darbord commented 4 months ago

I also wanted to add a test but there's too much stuff to setup and I got fed up, so here's what I got so far:

testPropagateToSelectedBuses

    | bus browser receivingBrowser root node visualization shape propagate model |
    bus := MiBus named: 'TestBus'.
    browser := MiSystemComplexityBrowser new followBus: bus.
    receivingBrowser := MiClassBlueprintBrowser new followBus: bus.

    model := FamixStClass named: 'AClass'.
    root := HNode new name: 'Visualization'.
    node := HNode new
                name: 'aNode';
                rawModel: model.
    root add: node.

    visualization := HSimpleVisualizationBuilder new
                         rootNode: root;
                         build.
    browser runVisualization.

    propagate := HMiPropagateMenuItem new
                     shape: (visualization canvas shapeFromModel: node);
                     visualization: visualization.

    "Trigger the propagate menu item."
    propagate target
        perform: propagate selector
        withArguments: propagate argument.

    self assert: receivingBrowser miSelectedItem identicalTo: model