myroslavarm / Experimental-Completion

My internship project: improving code completion for Pharo
6 stars 3 forks source link

TestMatchedNodeProducer(Object)>>doesNotUnderstand: #visitAssignmentNode: #78

Closed jecisc closed 4 years ago

jecisc commented 5 years ago

I got this error with this code:

setUp
    | mooseModel |
    super setUp.
    FamixMetamodelGenerateRemoteAccessorTestGeneratorA generate.
    FamixMetamodelGenerateRemoteAccessorTestGeneratorB generate.
    FamixMetamodelGenerateRemoteAccessorTestGeneratorAB generate.
    mooseModel := MooseModel new.
    "the following entities are created by the generators
    Do not remove them (or change the all the tests)"
    entityA := (self class envi#FmxTestGenerateAccessorAEntityA ifAbsent: [ self fail ]) new.
    entityB := (self class environment at: #FmxTestGenerateAccessorBEntityB ifAbsent: [ self fail ]) new.
    mooseModel addAll: {entityA . entityB}

My cursor was at self class envi and I as typing there.

TestMatchedNodeProducer(Object)>>doesNotUnderstand: #visitAssignmentNode:
RBAssignmentNode>>acceptVisitor:
TestMatchedNodeProducer>>completionListForNode:
TestCompletionModel>>initEntries
TestCompletionModel>>entries
TestCompletionModel>>notEmpty
NECMenuMorph>>selected:
NECMenuMorph>>narrowCompletion
NECMenuMorph>>setController:position:
NECMenuMorph class>>controller:position:
TestCompletionController(NECController)>>openMenuFor:
TestCompletionController(NECController)>>openMenu
myroslavarm commented 5 years ago

damn once again it should either treat it as error node (worst case) but ideally be able to infer that this is a message send. i'll make an intermediate fix but this should be left open until we figure it out, along with the other issue (array, i think)

myroslavarm commented 5 years ago

PR : https://github.com/pharo-project/pharo/pull/4215 again, just an intermediate fix to stop it from breaking

MarcusDenker commented 4 years ago

as we fixed the bug reported, we can close this.

myroslavarm commented 4 years ago

@MarcusDenker we did fix the DNU on assignment node, yes, but i was keeping this open because this shouldn't have been an assignment node in the first place... and i think we are yet to figure that one out. Although i can create a separate issue and reference this one, if that's better.

MarcusDenker commented 4 years ago

My philosophy is to always open new issue: if someone reports a bug and I fix it, it is fixed. If there is something else, it is something else. Because it is very annoying to read through all the things that area not a problem anymore.. nobody understands anything if an issue starts with multiple comments related to something that is already done.

myroslavarm commented 4 years ago

Ok i created a separate issue, closing this one.