12345678910111213141516171819202122232425262728293031323334353637 |
- package threading
- import (
- "io/ioutil"
- "log"
- "testing"
- "zero/core/lang"
- "github.com/stretchr/testify/assert"
- )
- func TestRoutineId(t *testing.T) {
- assert.True(t, RoutineId() > 0)
- }
- func TestRunSafe(t *testing.T) {
- log.SetOutput(ioutil.Discard)
- i := 0
- defer func() {
- assert.Equal(t, 1, i)
- }()
- ch := make(chan lang.PlaceholderType)
- go RunSafe(func() {
- defer func() {
- ch <- lang.Placeholder
- }()
- panic("panic")
- })
- <-ch
- i++
- }
|