mirror of https://github.com/dtm-labs/dtm.git
1 changed files with 83 additions and 0 deletions
@ -0,0 +1,83 @@ |
|||||
|
package dtmcli |
||||
|
|
||||
|
import ( |
||||
|
"errors" |
||||
|
"os" |
||||
|
"strings" |
||||
|
"testing" |
||||
|
|
||||
|
"github.com/stretchr/testify/assert" |
||||
|
) |
||||
|
|
||||
|
func TestEP(t *testing.T) { |
||||
|
skipped := true |
||||
|
err := func() (rerr error) { |
||||
|
defer P2E(&rerr) |
||||
|
E2P(errors.New("err1")) |
||||
|
skipped = false |
||||
|
return nil |
||||
|
}() |
||||
|
assert.Equal(t, true, skipped) |
||||
|
assert.Equal(t, "err1", err.Error()) |
||||
|
err = CatchP(func() { |
||||
|
PanicIf(true, errors.New("err2")) |
||||
|
}) |
||||
|
assert.Equal(t, "err2", err.Error()) |
||||
|
err = func() (rerr error) { |
||||
|
defer func() { |
||||
|
x := recover() |
||||
|
assert.Equal(t, 1, x) |
||||
|
}() |
||||
|
defer P2E(&rerr) |
||||
|
panic(1) |
||||
|
}() |
||||
|
} |
||||
|
|
||||
|
func TestTernary(t *testing.T) { |
||||
|
assert.Equal(t, "1", OrString("", "", "1")) |
||||
|
assert.Equal(t, "", OrString("", "", "")) |
||||
|
assert.Equal(t, "1", If(true, "1", "2")) |
||||
|
assert.Equal(t, "2", If(false, "1", "2")) |
||||
|
} |
||||
|
|
||||
|
func TestMarshal(t *testing.T) { |
||||
|
a := 0 |
||||
|
type e struct { |
||||
|
A int |
||||
|
} |
||||
|
e1 := e{A: 10} |
||||
|
m := map[string]int{} |
||||
|
assert.Equal(t, "1", MustMarshalString(1)) |
||||
|
assert.Equal(t, []byte("1"), MustMarshal(1)) |
||||
|
MustUnmarshal([]byte("2"), &a) |
||||
|
assert.Equal(t, 2, a) |
||||
|
MustUnmarshalString("3", &a) |
||||
|
assert.Equal(t, 3, a) |
||||
|
MustRemarshal(&e1, &m) |
||||
|
assert.Equal(t, 10, m["A"]) |
||||
|
} |
||||
|
|
||||
|
func TestSome(t *testing.T) { |
||||
|
n := MustAtoi("123") |
||||
|
assert.Equal(t, 123, n) |
||||
|
|
||||
|
err := CatchP(func() { |
||||
|
MustAtoi("abc") |
||||
|
}) |
||||
|
assert.Error(t, err) |
||||
|
wd := MustGetwd() |
||||
|
assert.NotEqual(t, "", wd) |
||||
|
|
||||
|
dir1 := GetCurrentCodeDir() |
||||
|
assert.Equal(t, true, strings.HasSuffix(dir1, "dtmcli")) |
||||
|
|
||||
|
func1 := GetFuncName() |
||||
|
assert.Equal(t, true, strings.HasSuffix(func1, "TestSome")) |
||||
|
|
||||
|
os.Setenv("IS_DOCKER_COMPOSE", "1") |
||||
|
s := MayReplaceLocalhost("http://localhost") |
||||
|
assert.Equal(t, "http://host.docker.internal", s) |
||||
|
os.Setenv("IS_DOCKER_COMPOSE", "") |
||||
|
s2 := MayReplaceLocalhost("http://localhost") |
||||
|
assert.Equal(t, "http://localhost", s2) |
||||
|
} |
||||
Loading…
Reference in new issue