This test checks the basic of 'Declare missing method T.f' quick fix. -- basic_stub.go -- package fromcallbasic type Basic struct{} func basic() { i := 1 b := Basic{} f(b.basic(i)) //@quickfix("basic", re"has no field or method", basic) } func f(i int) string { return "s" } -- @basic/basic_stub.go -- @@ -5 +5,4 @@ +func (b Basic) basic(i int) int { + panic("unimplemented") +} + -- pointer.go -- package fromcallbasic type P struct{} func recv_param_pointer() { p := &P{} i := 42 p.pointer(&i) //@quickfix("pointer", re"has no field or method", pointer) } -- @pointer/pointer.go -- @@ -5 +5,4 @@ +func (p *P) pointer(i *int) { + panic("unimplemented") +} + -- other.go -- package fromcallbasic type TypeDeclInOtherFile struct{} -- this.go -- package fromcallbasic func fun() { i := 1 t := TypeDeclInOtherFile{} t.other(i) //@quickfix("other", re"has no field or method", del_other) } -- @del_other/other.go -- @@ -5 +5,3 @@ +func (t TypeDeclInOtherFile) other(i int) { + panic("unimplemented") +} -- should_insert_after.go -- package fromcallbasic type HasMethod struct{} func (h *HasMethod) m() { h.should_insert_after() //@quickfix("should_insert_after", re"has no field or method", insert) } -- @insert/should_insert_after.go -- @@ -8 +8,4 @@ + +func (h *HasMethod) should_insert_after() { + panic("unimplemented") +}