aboutsummaryrefslogtreecommitdiff
path: root/internal/lsp/analysis/fillreturns/testdata
diff options
context:
space:
mode:
authorDan Willemsen <dwillemsen@google.com>2022-03-29 00:50:59 -0700
committerDan Willemsen <dwillemsen@google.com>2022-03-29 00:52:27 -0700
commitf10932f763d058b0dcb3acfb795c869996fef47b (patch)
tree7e04d345c214f3efac3c4b86c7ec3e831c500437 /internal/lsp/analysis/fillreturns/testdata
parentd6d1ab63f7e2d16fb9a1f1d29755d12da90aa0bb (diff)
parente693fb417253d14786976bd29a456961aa8b6343 (diff)
downloadgolang-x-tools-f10932f763d058b0dcb3acfb795c869996fef47b.tar.gz
Merge commit 'e693fb417253d14786976bd29a456961aa8b6343'
Change-Id: I65e50880732e718fa2264e47ef7cc19e37cc2f05
Diffstat (limited to 'internal/lsp/analysis/fillreturns/testdata')
-rw-r--r--internal/lsp/analysis/fillreturns/testdata/src/a/a.go54
-rw-r--r--internal/lsp/analysis/fillreturns/testdata/src/a/a.go.golden54
-rw-r--r--internal/lsp/analysis/fillreturns/testdata/src/a/typeparams/a.go5
-rw-r--r--internal/lsp/analysis/fillreturns/testdata/src/a/typeparams/a.go.golden5
4 files changed, 66 insertions, 52 deletions
diff --git a/internal/lsp/analysis/fillreturns/testdata/src/a/a.go b/internal/lsp/analysis/fillreturns/testdata/src/a/a.go
index 44cb25ffa..7ab0ff167 100644
--- a/internal/lsp/analysis/fillreturns/testdata/src/a/a.go
+++ b/internal/lsp/analysis/fillreturns/testdata/src/a/a.go
@@ -25,80 +25,82 @@ func x() error {
return errors.New("foo")
}
+// The error messages below changed in 1.18; "return values" covers both forms.
+
func b() (string, int, error) {
- return "", errors.New("foo") // want "wrong number of return values \\(want 3, got 2\\)"
+ return "", errors.New("foo") // want "return values"
}
func c() (string, int, error) {
- return 7, errors.New("foo") // want "wrong number of return values \\(want 3, got 2\\)"
+ return 7, errors.New("foo") // want "return values"
}
func d() (string, int, error) {
- return "", 7 // want "wrong number of return values \\(want 3, got 2\\)"
+ return "", 7 // want "return values"
}
func e() (T, error, *bool) {
- return (z(http.ListenAndServe))("", nil) // want "wrong number of return values \\(want 3, got 1\\)"
+ return (z(http.ListenAndServe))("", nil) // want "return values"
}
func preserveLeft() (int, int, error) {
- return 1, errors.New("foo") // want "wrong number of return values \\(want 3, got 2\\)"
+ return 1, errors.New("foo") // want "return values"
}
func matchValues() (int, error, string) {
- return errors.New("foo"), 3 // want "wrong number of return values \\(want 3, got 2\\)"
+ return errors.New("foo"), 3 // want "return values"
}
func preventDataOverwrite() (int, string) {
- return errors.New("foo") // want "wrong number of return values \\(want 2, got 1\\)"
+ return errors.New("foo") // want "return values"
}
func closure() (string, error) {
_ = func() (int, error) {
- return // want "wrong number of return values \\(want 2, got 0\\)"
+ return // want "return values"
}
- return // want "wrong number of return values \\(want 2, got 0\\)"
+ return // want "return values"
}
func basic() (uint8, uint16, uint32, uint64, int8, int16, int32, int64, float32, float64, complex64, complex128, byte, rune, uint, int, uintptr, string, bool, error) {
- return // want "wrong number of return values \\(want 20, got 0\\)"
+ return // want "return values"
}
func complex() (*int, []int, [2]int, map[int]int) {
- return // want "wrong number of return values \\(want 4, got 0\\)"
+ return // want "return values"
}
func structsAndInterfaces() (T, url.URL, T1, I, I1, io.Reader, Client, ast2.Stmt) {
- return // want "wrong number of return values \\(want 8, got 0\\)"
+ return // want "return values"
}
func m() (int, error) {
if 1 == 2 {
- return // want "wrong number of return values \\(want 2, got 0\\)"
+ return // want "return values"
} else if 1 == 3 {
- return errors.New("foo") // want "wrong number of return values \\(want 2, got 1\\)"
+ return errors.New("foo") // want "return values"
} else {
- return 1 // want "wrong number of return values \\(want 2, got 1\\)"
+ return 1 // want "return values"
}
- return // want "wrong number of return values \\(want 2, got 0\\)"
+ return // want "return values"
}
func convertibleTypes() (ast2.Expr, int) {
- return &ast2.ArrayType{} // want "wrong number of return values \\(want 2, got 1\\)"
+ return &ast2.ArrayType{} // want "return values"
}
func assignableTypes() (map[string]int, int) {
type X map[string]int
var x X
- return x // want "wrong number of return values \\(want 2, got 1\\)"
+ return x // want "return values"
}
func interfaceAndError() (I, int) {
- return errors.New("foo") // want "wrong number of return values \\(want 2, got 1\\)"
+ return errors.New("foo") // want "return values"
}
func funcOneReturn() (string, error) {
- return strconv.Itoa(1) // want "wrong number of return values \\(want 2, got 1\\)"
+ return strconv.Itoa(1) // want "return values"
}
func funcMultipleReturn() (int, error, string) {
@@ -110,16 +112,16 @@ func localFuncMultipleReturn() (string, int, error, string) {
}
func multipleUnused() (int, string, string, string) {
- return 3, 4, 5 // want "wrong number of return values \\(want 4, got 3\\)"
+ return 3, 4, 5 // want "return values"
}
func gotTooMany() int {
if true {
- return 0, "" // want "wrong number of return values \\(want 1, got 2\\)"
+ return 0, "" // want "return values"
} else {
- return 1, 0, nil // want "wrong number of return values \\(want 1, got 3\\)"
+ return 1, 0, nil // want "return values"
}
- return 0, 5, false // want "wrong number of return values \\(want 1, got 3\\)"
+ return 0, 5, false // want "return values"
}
func fillVars() (int, string, ast.Node, bool, error) {
@@ -128,10 +130,10 @@ func fillVars() (int, string, ast.Node, bool, error) {
var t bool
if true {
err := errors.New("fail")
- return // want "wrong number of return values \\(want 5, got 0\\)"
+ return // want "return values"
}
n := ast.NewIdent("ident")
int := 3
var b bool
- return "" // want "wrong number of return values \\(want 5, got 1\\)"
+ return "" // want "return values"
}
diff --git a/internal/lsp/analysis/fillreturns/testdata/src/a/a.go.golden b/internal/lsp/analysis/fillreturns/testdata/src/a/a.go.golden
index 1435ea09a..f007a5f37 100644
--- a/internal/lsp/analysis/fillreturns/testdata/src/a/a.go.golden
+++ b/internal/lsp/analysis/fillreturns/testdata/src/a/a.go.golden
@@ -25,80 +25,82 @@ func x() error {
return errors.New("foo")
}
+// The error messages below changed in 1.18; "return values" covers both forms.
+
func b() (string, int, error) {
- return "", 0, errors.New("foo") // want "wrong number of return values \\(want 3, got 2\\)"
+ return "", 0, errors.New("foo") // want "return values"
}
func c() (string, int, error) {
- return "", 7, errors.New("foo") // want "wrong number of return values \\(want 3, got 2\\)"
+ return "", 7, errors.New("foo") // want "return values"
}
func d() (string, int, error) {
- return "", 7, nil // want "wrong number of return values \\(want 3, got 2\\)"
+ return "", 7, nil // want "return values"
}
func e() (T, error, *bool) {
- return T{}, (z(http.ListenAndServe))("", nil), nil // want "wrong number of return values \\(want 3, got 1\\)"
+ return T{}, (z(http.ListenAndServe))("", nil), nil // want "return values"
}
func preserveLeft() (int, int, error) {
- return 1, 0, errors.New("foo") // want "wrong number of return values \\(want 3, got 2\\)"
+ return 1, 0, errors.New("foo") // want "return values"
}
func matchValues() (int, error, string) {
- return 3, errors.New("foo"), "" // want "wrong number of return values \\(want 3, got 2\\)"
+ return 3, errors.New("foo"), "" // want "return values"
}
func preventDataOverwrite() (int, string) {
- return 0, "", errors.New("foo") // want "wrong number of return values \\(want 2, got 1\\)"
+ return 0, "", errors.New("foo") // want "return values"
}
func closure() (string, error) {
_ = func() (int, error) {
- return 0, nil // want "wrong number of return values \\(want 2, got 0\\)"
+ return 0, nil // want "return values"
}
- return "", nil // want "wrong number of return values \\(want 2, got 0\\)"
+ return "", nil // want "return values"
}
func basic() (uint8, uint16, uint32, uint64, int8, int16, int32, int64, float32, float64, complex64, complex128, byte, rune, uint, int, uintptr, string, bool, error) {
- return 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", false, nil // want "wrong number of return values \\(want 20, got 0\\)"
+ return 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", false, nil // want "return values"
}
func complex() (*int, []int, [2]int, map[int]int) {
- return nil, nil, nil, nil // want "wrong number of return values \\(want 4, got 0\\)"
+ return nil, nil, nil, nil // want "return values"
}
func structsAndInterfaces() (T, url.URL, T1, I, I1, io.Reader, Client, ast2.Stmt) {
- return T{}, url.URL{}, T{}, nil, nil, nil, Client{}, nil // want "wrong number of return values \\(want 8, got 0\\)"
+ return T{}, url.URL{}, T{}, nil, nil, nil, Client{}, nil // want "return values"
}
func m() (int, error) {
if 1 == 2 {
- return 0, nil // want "wrong number of return values \\(want 2, got 0\\)"
+ return 0, nil // want "return values"
} else if 1 == 3 {
- return 0, errors.New("foo") // want "wrong number of return values \\(want 2, got 1\\)"
+ return 0, errors.New("foo") // want "return values"
} else {
- return 1, nil // want "wrong number of return values \\(want 2, got 1\\)"
+ return 1, nil // want "return values"
}
- return 0, nil // want "wrong number of return values \\(want 2, got 0\\)"
+ return 0, nil // want "return values"
}
func convertibleTypes() (ast2.Expr, int) {
- return &ast2.ArrayType{}, 0 // want "wrong number of return values \\(want 2, got 1\\)"
+ return &ast2.ArrayType{}, 0 // want "return values"
}
func assignableTypes() (map[string]int, int) {
type X map[string]int
var x X
- return x, 0 // want "wrong number of return values \\(want 2, got 1\\)"
+ return x, 0 // want "return values"
}
func interfaceAndError() (I, int) {
- return errors.New("foo"), 0 // want "wrong number of return values \\(want 2, got 1\\)"
+ return errors.New("foo"), 0 // want "return values"
}
func funcOneReturn() (string, error) {
- return strconv.Itoa(1), nil // want "wrong number of return values \\(want 2, got 1\\)"
+ return strconv.Itoa(1), nil // want "return values"
}
func funcMultipleReturn() (int, error, string) {
@@ -110,16 +112,16 @@ func localFuncMultipleReturn() (string, int, error, string) {
}
func multipleUnused() (int, string, string, string) {
- return 3, "", "", "", 4, 5 // want "wrong number of return values \\(want 4, got 3\\)"
+ return 3, "", "", "", 4, 5 // want "return values"
}
func gotTooMany() int {
if true {
- return 0 // want "wrong number of return values \\(want 1, got 2\\)"
+ return 0 // want "return values"
} else {
- return 1 // want "wrong number of return values \\(want 1, got 3\\)"
+ return 1 // want "return values"
}
- return 5 // want "wrong number of return values \\(want 1, got 3\\)"
+ return 5 // want "return values"
}
func fillVars() (int, string, ast.Node, bool, error) {
@@ -128,10 +130,10 @@ func fillVars() (int, string, ast.Node, bool, error) {
var t bool
if true {
err := errors.New("fail")
- return eint, s, nil, false, err // want "wrong number of return values \\(want 5, got 0\\)"
+ return eint, s, nil, false, err // want "return values"
}
n := ast.NewIdent("ident")
int := 3
var b bool
- return int, "", n, b, nil // want "wrong number of return values \\(want 5, got 1\\)"
+ return int, "", n, b, nil // want "return values"
}
diff --git a/internal/lsp/analysis/fillreturns/testdata/src/a/typeparams/a.go b/internal/lsp/analysis/fillreturns/testdata/src/a/typeparams/a.go
new file mode 100644
index 000000000..8454bd2ce
--- /dev/null
+++ b/internal/lsp/analysis/fillreturns/testdata/src/a/typeparams/a.go
@@ -0,0 +1,5 @@
+package fillreturns
+
+func hello[T any]() int {
+ return
+}
diff --git a/internal/lsp/analysis/fillreturns/testdata/src/a/typeparams/a.go.golden b/internal/lsp/analysis/fillreturns/testdata/src/a/typeparams/a.go.golden
new file mode 100644
index 000000000..8454bd2ce
--- /dev/null
+++ b/internal/lsp/analysis/fillreturns/testdata/src/a/typeparams/a.go.golden
@@ -0,0 +1,5 @@
+package fillreturns
+
+func hello[T any]() int {
+ return
+}