Skip to content
This repository was archived by the owner on Aug 30, 2023. It is now read-only.

Commit 107878e

Browse files
committed
test: Added error_packages example to test various packages
1 parent 1a29fa7 commit 107878e

File tree

1 file changed

+70
-0
lines changed

1 file changed

+70
-0
lines changed

example/error_packages.go

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
package main
2+
3+
import (
4+
"fmt"
5+
6+
"github.com/davecgh/go-spew/spew"
7+
raven "github.com/getsentry/raven-go"
8+
goErrors "github.com/go-errors/errors"
9+
pingcapErrors "github.com/pingcap/errors"
10+
pkgErrors "github.com/pkg/errors"
11+
)
12+
13+
//==============================
14+
// https://github.com/pkg/errors
15+
//==============================
16+
17+
func pkgBar() error {
18+
return pkgErrors.New("this is bad from pkgErrors")
19+
}
20+
21+
func pkgFoo() error {
22+
return pkgBar()
23+
}
24+
25+
//==================================
26+
// https://github.com/pingcap/errors
27+
//==================================
28+
29+
func pingcapBar() error {
30+
return pingcapErrors.New("this is bad from pingcapErrors")
31+
}
32+
33+
func pingcapFoo() error {
34+
return pingcapBar()
35+
}
36+
37+
//====================================
38+
// https://github.com/go-errors/errors
39+
//====================================
40+
41+
func goErrorsBar() error {
42+
return goErrors.New(goErrors.Errorf("this is bad from goErrors"))
43+
}
44+
45+
func goErrorsFoo() error {
46+
return goErrorsBar()
47+
}
48+
49+
//==============================
50+
51+
func main() {
52+
pkgErr := pkgFoo()
53+
pkgStacktrace := raven.GetOrNewStacktrace(pkgErr, 0, 3, []string{})
54+
spew.Dump(pkgStacktrace)
55+
spew.Dump(len(pkgStacktrace.Frames))
56+
57+
fmt.Print("\n\n\n")
58+
59+
pingcapErr := pingcapFoo()
60+
pingcapStacktrace := raven.GetOrNewStacktrace(pingcapErr, 0, 3, []string{})
61+
spew.Dump(pingcapStacktrace)
62+
spew.Dump(len(pingcapStacktrace.Frames))
63+
64+
fmt.Print("\n\n\n")
65+
66+
goErrorsErr := goErrorsFoo()
67+
goErrorsStacktrace := raven.GetOrNewStacktrace(goErrorsErr, 0, 3, []string{})
68+
spew.Dump(goErrorsStacktrace)
69+
spew.Dump(len(goErrorsStacktrace.Frames))
70+
}

0 commit comments

Comments
 (0)