mirror of https://github.com/tikv/client-go.git
util: replace pingcap/check with testify (#103)
Signed-off-by: disksing <i@disksing.com>
This commit is contained in:
parent
69957329f9
commit
7403c63e32
1
go.mod
1
go.mod
|
|
@ -26,6 +26,7 @@ require (
|
||||||
github.com/prometheus/client_model v0.2.0
|
github.com/prometheus/client_model v0.2.0
|
||||||
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0 // indirect
|
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0 // indirect
|
||||||
github.com/sirupsen/logrus v1.6.0 // indirect
|
github.com/sirupsen/logrus v1.6.0 // indirect
|
||||||
|
github.com/stretchr/testify v1.7.0
|
||||||
github.com/tikv/pd v1.1.0-beta.0.20210323121136-78679e5e209d
|
github.com/tikv/pd v1.1.0-beta.0.20210323121136-78679e5e209d
|
||||||
github.com/twmb/murmur3 v1.1.3
|
github.com/twmb/murmur3 v1.1.3
|
||||||
go.etcd.io/etcd v0.5.0-alpha.5.0.20200824191128-ae9734ed278b
|
go.etcd.io/etcd v0.5.0-alpha.5.0.20200824191128-ae9734ed278b
|
||||||
|
|
|
||||||
3
go.sum
3
go.sum
|
|
@ -210,9 +210,11 @@ github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxv
|
||||||
github.com/konsorten/go-windows-terminal-sequences v1.0.3 h1:CE8S1cTafDpPvMhIxNJKvHsGVBgn1xWYf1NbHQhywc8=
|
github.com/konsorten/go-windows-terminal-sequences v1.0.3 h1:CE8S1cTafDpPvMhIxNJKvHsGVBgn1xWYf1NbHQhywc8=
|
||||||
github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
|
github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
|
||||||
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
|
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
|
||||||
|
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
|
||||||
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
||||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||||
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
|
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
|
||||||
|
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
|
||||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||||
github.com/leodido/go-urn v1.1.0/go.mod h1:+cyI34gQWZcE1eQU7NVgKkkzdXDQHr1dBMtdAPozLkw=
|
github.com/leodido/go-urn v1.1.0/go.mod h1:+cyI34gQWZcE1eQU7NVgKkkzdXDQHr1dBMtdAPozLkw=
|
||||||
github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
|
github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
|
||||||
|
|
@ -597,6 +599,7 @@ gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLks
|
||||||
gopkg.in/alecthomas/kingpin.v3-unstable v3.0.0-20180810215634-df19058c872c/go.mod h1:3HH7i1SgMqlzxCcBmUHW657sD4Kvv9sC3HpL3YukzwA=
|
gopkg.in/alecthomas/kingpin.v3-unstable v3.0.0-20180810215634-df19058c872c/go.mod h1:3HH7i1SgMqlzxCcBmUHW657sD4Kvv9sC3HpL3YukzwA=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
|
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo=
|
||||||
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
|
gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
|
||||||
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
|
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ require (
|
||||||
github.com/pingcap/kvproto v0.0.0-20210611081648-a215b4e61d2f
|
github.com/pingcap/kvproto v0.0.0-20210611081648-a215b4e61d2f
|
||||||
github.com/pingcap/parser v0.0.0-20210618053735-57843e8185c4
|
github.com/pingcap/parser v0.0.0-20210618053735-57843e8185c4
|
||||||
github.com/pingcap/tidb v1.1.0-beta.0.20210616023036-9461f5ba55b1
|
github.com/pingcap/tidb v1.1.0-beta.0.20210616023036-9461f5ba55b1
|
||||||
|
github.com/stretchr/testify v1.7.0
|
||||||
github.com/tikv/client-go/v2 v2.0.0
|
github.com/tikv/client-go/v2 v2.0.0
|
||||||
github.com/tikv/pd v1.1.0-beta.0.20210323121136-78679e5e209d
|
github.com/tikv/pd v1.1.0-beta.0.20210323121136-78679e5e209d
|
||||||
go.uber.org/zap v1.17.0
|
go.uber.org/zap v1.17.0
|
||||||
|
|
|
||||||
|
|
@ -317,10 +317,12 @@ github.com/konsorten/go-windows-terminal-sequences v1.0.3 h1:CE8S1cTafDpPvMhIxNJ
|
||||||
github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
|
github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
|
||||||
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
|
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
|
||||||
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
||||||
|
github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI=
|
||||||
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||||
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
|
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
|
||||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||||
|
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||||
github.com/leodido/go-urn v1.1.0/go.mod h1:+cyI34gQWZcE1eQU7NVgKkkzdXDQHr1dBMtdAPozLkw=
|
github.com/leodido/go-urn v1.1.0/go.mod h1:+cyI34gQWZcE1eQU7NVgKkkzdXDQHr1dBMtdAPozLkw=
|
||||||
github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
|
github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
|
||||||
|
|
@ -877,6 +879,7 @@ gopkg.in/alecthomas/kingpin.v3-unstable v3.0.0-20180810215634-df19058c872c/go.mo
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||||
gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
|
gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
|
||||||
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
|
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
|
||||||
|
|
|
||||||
|
|
@ -14,35 +14,31 @@
|
||||||
package tikv_test
|
package tikv_test
|
||||||
|
|
||||||
import (
|
import (
|
||||||
. "github.com/pingcap/check"
|
"testing"
|
||||||
|
|
||||||
"github.com/pingcap/kvproto/pkg/kvrpcpb"
|
"github.com/pingcap/kvproto/pkg/kvrpcpb"
|
||||||
"github.com/pingcap/tidb/store/mockstore/unistore"
|
"github.com/pingcap/tidb/store/mockstore/unistore"
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
|
"github.com/stretchr/testify/require"
|
||||||
"github.com/tikv/client-go/v2/tikv"
|
"github.com/tikv/client-go/v2/tikv"
|
||||||
)
|
)
|
||||||
|
|
||||||
type testPrewriteSuite struct {
|
func TestSetMinCommitTSInAsyncCommit(t *testing.T) {
|
||||||
store *tikv.KVStore
|
require, assert := require.New(t), assert.New(t)
|
||||||
}
|
|
||||||
|
|
||||||
var _ = Suite(&testPrewriteSuite{})
|
|
||||||
|
|
||||||
func (s *testPrewriteSuite) SetUpTest(c *C) {
|
|
||||||
client, pdClient, cluster, err := unistore.New("")
|
client, pdClient, cluster, err := unistore.New("")
|
||||||
c.Assert(err, IsNil)
|
require.Nil(err)
|
||||||
unistore.BootstrapWithSingleStore(cluster)
|
unistore.BootstrapWithSingleStore(cluster)
|
||||||
store, err := tikv.NewTestTiKVStore(client, pdClient, nil, nil, 0)
|
store, err := tikv.NewTestTiKVStore(client, pdClient, nil, nil, 0)
|
||||||
c.Assert(err, IsNil)
|
require.Nil(err)
|
||||||
s.store = store
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *testPrewriteSuite) TestSetMinCommitTSInAsyncCommit(c *C) {
|
tx, err := store.Begin()
|
||||||
t, err := s.store.Begin()
|
require.Nil(err)
|
||||||
c.Assert(err, IsNil)
|
txn := tikv.TxnProbe{KVTxn: tx}
|
||||||
txn := tikv.TxnProbe{KVTxn: t}
|
|
||||||
err = txn.Set([]byte("k"), []byte("v"))
|
err = txn.Set([]byte("k"), []byte("v"))
|
||||||
c.Assert(err, IsNil)
|
assert.Nil(err)
|
||||||
committer, err := txn.NewCommitter(1)
|
committer, err := txn.NewCommitter(1)
|
||||||
c.Assert(err, IsNil)
|
assert.Nil(err)
|
||||||
committer.SetUseAsyncCommit()
|
committer.SetUseAsyncCommit()
|
||||||
|
|
||||||
buildRequest := func() *kvrpcpb.PrewriteRequest {
|
buildRequest := func() *kvrpcpb.PrewriteRequest {
|
||||||
|
|
@ -52,16 +48,16 @@ func (s *testPrewriteSuite) TestSetMinCommitTSInAsyncCommit(c *C) {
|
||||||
|
|
||||||
// no forUpdateTS
|
// no forUpdateTS
|
||||||
req := buildRequest()
|
req := buildRequest()
|
||||||
c.Assert(req.MinCommitTs, Equals, txn.StartTS()+1)
|
assert.Equal(req.MinCommitTs, txn.StartTS()+1)
|
||||||
|
|
||||||
// forUpdateTS is set
|
// forUpdateTS is set
|
||||||
committer.SetForUpdateTS(txn.StartTS() + (5 << 18))
|
committer.SetForUpdateTS(txn.StartTS() + (5 << 18))
|
||||||
req = buildRequest()
|
req = buildRequest()
|
||||||
c.Assert(req.MinCommitTs, Equals, committer.GetForUpdateTS()+1)
|
assert.Equal(req.MinCommitTs, committer.GetForUpdateTS()+1)
|
||||||
|
|
||||||
// minCommitTS is set
|
// minCommitTS is set
|
||||||
committer.SetMinCommitTS(txn.StartTS() + (10 << 18))
|
committer.SetMinCommitTS(txn.StartTS() + (10 << 18))
|
||||||
req = buildRequest()
|
req = buildRequest()
|
||||||
c.Assert(req.MinCommitTs, Equals, committer.GetMinCommitTS())
|
assert.Equal(req.MinCommitTs, committer.GetMinCommitTS())
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,19 +17,13 @@ import (
|
||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
. "github.com/pingcap/check"
|
"github.com/stretchr/testify/assert"
|
||||||
|
"github.com/stretchr/testify/require"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestT(t *testing.T) {
|
func TestCompatibleParseGCTime(t *testing.T) {
|
||||||
TestingT(t)
|
assert, require := assert.New(t), require.New(t)
|
||||||
}
|
|
||||||
|
|
||||||
var _ = Suite(&testMiscSuite{})
|
|
||||||
|
|
||||||
type testMiscSuite struct {
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *testMiscSuite) TestCompatibleParseGCTime(c *C) {
|
|
||||||
values := []string{
|
values := []string{
|
||||||
"20181218-19:53:37 +0800 CST",
|
"20181218-19:53:37 +0800 CST",
|
||||||
"20181218-19:53:37 +0800 MST",
|
"20181218-19:53:37 +0800 MST",
|
||||||
|
|
@ -55,19 +49,19 @@ func (s *testMiscSuite) TestCompatibleParseGCTime(c *C) {
|
||||||
expectedTimeFormatted := "20181218-19:53:37 +0800"
|
expectedTimeFormatted := "20181218-19:53:37 +0800"
|
||||||
|
|
||||||
beijing, err := time.LoadLocation("Asia/Shanghai")
|
beijing, err := time.LoadLocation("Asia/Shanghai")
|
||||||
c.Assert(err, IsNil)
|
require.Nil(err)
|
||||||
|
|
||||||
for _, value := range values {
|
for _, value := range values {
|
||||||
t, err := CompatibleParseGCTime(value)
|
t, err := CompatibleParseGCTime(value)
|
||||||
c.Assert(err, IsNil)
|
assert.Nil(err)
|
||||||
c.Assert(t.Equal(expectedTime), Equals, true)
|
assert.True(t.Equal(expectedTime))
|
||||||
|
|
||||||
formatted := t.In(beijing).Format(GCTimeFormat)
|
formatted := t.In(beijing).Format(GCTimeFormat)
|
||||||
c.Assert(formatted, Equals, expectedTimeFormatted)
|
assert.Equal(formatted, expectedTimeFormatted)
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, value := range invalidValues {
|
for _, value := range invalidValues {
|
||||||
_, err := CompatibleParseGCTime(value)
|
_, err := CompatibleParseGCTime(value)
|
||||||
c.Assert(err, NotNil)
|
assert.NotNil(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,30 +14,33 @@
|
||||||
package util
|
package util
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
. "github.com/pingcap/check"
|
"github.com/stretchr/testify/assert"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (s *testMiscSuite) TestRateLimit(c *C) {
|
func TestRateLimit(t *testing.T) {
|
||||||
|
assert := assert.New(t)
|
||||||
|
|
||||||
done := make(chan struct{}, 1)
|
done := make(chan struct{}, 1)
|
||||||
rl := NewRateLimit(1)
|
rl := NewRateLimit(1)
|
||||||
c.Assert(rl.PutToken, PanicMatches, "put a redundant token")
|
assert.PanicsWithValue("put a redundant token", rl.PutToken)
|
||||||
exit := rl.GetToken(done)
|
exit := rl.GetToken(done)
|
||||||
c.Assert(exit, Equals, false)
|
assert.False(exit)
|
||||||
rl.PutToken()
|
rl.PutToken()
|
||||||
c.Assert(rl.PutToken, PanicMatches, "put a redundant token")
|
assert.PanicsWithValue("put a redundant token", rl.PutToken)
|
||||||
|
|
||||||
exit = rl.GetToken(done)
|
exit = rl.GetToken(done)
|
||||||
c.Assert(exit, Equals, false)
|
assert.False(exit)
|
||||||
done <- struct{}{}
|
done <- struct{}{}
|
||||||
exit = rl.GetToken(done) // blocked but exit
|
exit = rl.GetToken(done) // blocked but exit
|
||||||
c.Assert(exit, Equals, true)
|
assert.True(exit)
|
||||||
|
|
||||||
sig := make(chan int, 1)
|
sig := make(chan int, 1)
|
||||||
go func() {
|
go func() {
|
||||||
exit = rl.GetToken(done) // blocked
|
exit = rl.GetToken(done) // blocked
|
||||||
c.Assert(exit, Equals, false)
|
assert.False(exit)
|
||||||
close(sig)
|
close(sig)
|
||||||
}()
|
}()
|
||||||
time.Sleep(200 * time.Millisecond)
|
time.Sleep(200 * time.Millisecond)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue