Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gitaly-linters/testdata/src/errorwrap/errorwrap_test.go')
-rw-r--r--tools/gitaly-linters/testdata/src/errorwrap/errorwrap_test.go37
1 files changed, 37 insertions, 0 deletions
diff --git a/tools/gitaly-linters/testdata/src/errorwrap/errorwrap_test.go b/tools/gitaly-linters/testdata/src/errorwrap/errorwrap_test.go
new file mode 100644
index 000000000..5f6764e63
--- /dev/null
+++ b/tools/gitaly-linters/testdata/src/errorwrap/errorwrap_test.go
@@ -0,0 +1,37 @@
+package errorwrap
+
+import (
+ "fmt"
+)
+
+// This file is the test fixture for Gitaly linters
+
+func call(format string, err error) {}
+
+func errorWrapOkay() {
+ err := fmt.Errorf("test error")
+
+ _ = fmt.Errorf("error: %s", "something else")
+ _ = fmt.Errorf("error: %v", "something else")
+ _ = fmt.Errorf("error: %q", "something else")
+ _ = fmt.Errorf("error: %s %d", "something else", 5)
+ _ = fmt.Errorf("error: %w", err)
+ _ = fmt.Errorf("error: %w", fmt.Errorf("error: %s", "hello"))
+
+ call("error: %w", fmt.Errorf("error: %s", "hello"))
+ _ = fmt.Sprintf("error: %s", err)
+}
+
+func errorWrapNotOkay() {
+ err := fmt.Errorf("test error")
+
+ _ = fmt.Errorf("error: %s", err) // want "please use %w to wrap errors"
+ _ = fmt.Errorf("error: %s", fmt.Errorf("test error")) // want "please use %w to wrap errors"
+ _ = fmt.Errorf("error: %v", err) // want "please use %w to wrap errors"
+ _ = fmt.Errorf("error: %v", fmt.Errorf("test error")) // want "please use %w to wrap errors"
+ _ = fmt.Errorf("error: %q", err) // want "please use %w to wrap errors"
+ _ = fmt.Errorf("error: %q", fmt.Errorf("test error")) // want "please use %w to wrap errors"
+ _ = fmt.Errorf("error number %d: %s", 5, err) // want "please use %w to wrap errors"
+ _ = fmt.Errorf("error: %w", err)
+ _ = fmt.Errorf("error: %w", fmt.Errorf("error: %s", err)) // want "please use %w to wrap errors"
+}