| This test demonstrates diagnostics for adding a go.work file. |
| |
| Quick-fixes change files on disk, so are tested by integration tests. |
| |
| TODO(rfindley): improve the "cannot find package" import errors. |
| |
| -- skip -- |
| These diagnostics are no longer produced, because in golang/go#57979 |
| (zero-config gopls) we made gopls function independent of a go.work file. |
| Preserving this test as we may want to re-enable the code actions go manage |
| a go.work file. |
| |
| Note that in go.dev/issue/60584#issuecomment-1622238115, this test was flaky. |
| However, critical error logic has since been rewritten. |
| |
| -- a/go.mod -- |
| module mod.com/a |
| |
| go 1.18 |
| |
| -- a/main.go -- |
| package main //@diag("main", re"add a go.work file") |
| |
| import "mod.com/a/lib" //@diag("\"mod.com", re"cannot find package") |
| |
| func main() { |
| _ = lib.C |
| } |
| |
| -- a/lib/lib.go -- |
| package lib //@diag("lib", re"add a go.work file") |
| |
| const C = "b" |
| -- b/go.mod -- |
| module mod.com/b |
| |
| go 1.18 |
| |
| -- b/main.go -- |
| package main //@diag("main", re"add a go.work file") |
| |
| import "mod.com/b/lib" //@diag("\"mod.com", re"cannot find package") |
| |
| func main() { |
| _ = lib.C |
| } |
| |
| -- b/lib/lib.go -- |
| package lib //@diag("lib", re"add a go.work file") |
| |
| const C = "b" |