mirror of
https://github.com/golang/go
synced 2024-11-25 19:07:57 -07:00
iter: fix spurious TestPullDoubleYield[2] successes
The two tests confused a nil pointer panic with the panic from a double call to yield. Change-Id: I0040e60cf4b702a92825d308db1201a85f164009 Reviewed-on: https://go-review.googlesource.com/c/go/+/617917 Reviewed-by: Ian Lance Taylor <iant@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Ian Lance Taylor <iant@google.com> Reviewed-by: Cherry Mui <cherryyz@google.com>
This commit is contained in:
parent
7e2487cf65
commit
604eaa175b
@ -193,7 +193,11 @@ func doDoubleNext2() Seq2[int, int] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestPullDoubleYield(t *testing.T) {
|
func TestPullDoubleYield(t *testing.T) {
|
||||||
_, stop := Pull(storeYield())
|
next, stop := Pull(storeYield())
|
||||||
|
next()
|
||||||
|
if yieldSlot == nil {
|
||||||
|
t.Fatal("yield failed")
|
||||||
|
}
|
||||||
defer func() {
|
defer func() {
|
||||||
if recover() != nil {
|
if recover() != nil {
|
||||||
yieldSlot = nil
|
yieldSlot = nil
|
||||||
@ -218,7 +222,11 @@ func storeYield() Seq[int] {
|
|||||||
var yieldSlot func(int) bool
|
var yieldSlot func(int) bool
|
||||||
|
|
||||||
func TestPullDoubleYield2(t *testing.T) {
|
func TestPullDoubleYield2(t *testing.T) {
|
||||||
_, stop := Pull2(storeYield2())
|
next, stop := Pull2(storeYield2())
|
||||||
|
next()
|
||||||
|
if yieldSlot2 == nil {
|
||||||
|
t.Fatal("yield failed")
|
||||||
|
}
|
||||||
defer func() {
|
defer func() {
|
||||||
if recover() != nil {
|
if recover() != nil {
|
||||||
yieldSlot2 = nil
|
yieldSlot2 = nil
|
||||||
|
Loading…
Reference in New Issue
Block a user