package fserr import ( "fmt" "testing" ) func TestNew(t *testing.T) { expected := "test" err := New(expected) if err.Error() != expected { t.Errorf("expected %s but not", expected) } if fmt.Sprintf("%s", err) != expected { t.Errorf("expected %s but not", expected) } if fmt.Sprintf("%v", err) != expected { t.Errorf("expected %s but not", expected) } if fmt.Sprintf("%q", err) != `"test"` { t.Errorf("expected %s but not", expected) } } func TestWrap(t *testing.T) { expected := "wrap: test" err := Wrap(New("test"), "wrap") if err.Error() != expected { t.Errorf("expected %s but not", expected) } if fmt.Sprintf("%s", err) != expected { t.Errorf("expected %s but not", expected) } if fmt.Sprintf("%v", err) != expected { t.Errorf("expected %s but not", expected) } if fmt.Sprintf("%q", err) != `"wrap: test"` { t.Errorf("expected %s but not", expected) } } func TestCause(t *testing.T) { origin := New("origin") err := Wrap(origin, "wrap") err = UmWrap(err) if err != origin { t.Errorf("expected %s but not", "origin") } }