1- package iter
1+ package iter_test
22
33import (
44 "errors"
@@ -8,12 +8,14 @@ import (
88 "sync/atomic"
99 "testing"
1010
11+ "github.com/sourcegraph/conc/iter"
12+
1113 "github.com/stretchr/testify/require"
1214)
1315
1416func ExampleIterator () {
1517 input := []int {1 , 2 , 3 , 4 }
16- iterator := Iterator [int ]{
18+ iterator := iter. Iterator [int ]{
1719 MaxGoroutines : len (input ) / 2 ,
1820 }
1921
@@ -34,7 +36,7 @@ func TestIterator(t *testing.T) {
3436 t .Run ("safe for reuse" , func (t * testing.T ) {
3537 t .Parallel ()
3638
37- iterator := Iterator [int ]{MaxGoroutines : 999 }
39+ iterator := iter. Iterator [int ]{MaxGoroutines : 999 }
3840
3941 // iter.Concurrency > numInput case that updates iter.Concurrency
4042 iterator .ForEachIdx ([]int {1 , 2 , 3 }, func (i int , t * int ) {})
@@ -45,12 +47,12 @@ func TestIterator(t *testing.T) {
4547 t .Run ("allows more than defaultMaxGoroutines() concurrent tasks" , func (t * testing.T ) {
4648 t .Parallel ()
4749
48- wantConcurrency := 2 * defaultMaxGoroutines ()
50+ wantConcurrency := 2 * iter . DefaultMaxGoroutines ()
4951
5052 maxConcurrencyHit := make (chan struct {})
5153
5254 tasks := make ([]int , wantConcurrency )
53- iterator := Iterator [int ]{MaxGoroutines : wantConcurrency }
55+ iterator := iter. Iterator [int ]{MaxGoroutines : wantConcurrency }
5456
5557 var concurrentTasks atomic.Int64
5658 iterator .ForEach (tasks , func (t * int ) {
@@ -79,7 +81,7 @@ func TestForEachIdx(t *testing.T) {
7981 t .Parallel ()
8082 f := func () {
8183 ints := []int {}
82- ForEachIdx (ints , func (i int , val * int ) {
84+ iter . ForEachIdx (ints , func (i int , val * int ) {
8385 panic ("this should never be called" )
8486 })
8587 }
@@ -90,7 +92,7 @@ func TestForEachIdx(t *testing.T) {
9092 t .Parallel ()
9193 f := func () {
9294 ints := []int {1 }
93- ForEachIdx (ints , func (i int , val * int ) {
95+ iter . ForEachIdx (ints , func (i int , val * int ) {
9496 panic ("super bad thing happened" )
9597 })
9698 }
@@ -100,7 +102,7 @@ func TestForEachIdx(t *testing.T) {
100102 t .Run ("mutating inputs is fine" , func (t * testing.T ) {
101103 t .Parallel ()
102104 ints := []int {1 , 2 , 3 , 4 , 5 }
103- ForEachIdx (ints , func (i int , val * int ) {
105+ iter . ForEachIdx (ints , func (i int , val * int ) {
104106 * val += 1
105107 })
106108 require .Equal (t , []int {2 , 3 , 4 , 5 , 6 }, ints )
@@ -109,7 +111,7 @@ func TestForEachIdx(t *testing.T) {
109111 t .Run ("huge inputs" , func (t * testing.T ) {
110112 t .Parallel ()
111113 ints := make ([]int , 10000 )
112- ForEachIdx (ints , func (i int , val * int ) {
114+ iter . ForEachIdx (ints , func (i int , val * int ) {
113115 * val = i
114116 })
115117 expected := make ([]int , 10000 )
@@ -127,7 +129,7 @@ func TestForEach(t *testing.T) {
127129 t .Parallel ()
128130 f := func () {
129131 ints := []int {}
130- ForEach (ints , func (val * int ) {
132+ iter . ForEach (ints , func (val * int ) {
131133 panic ("this should never be called" )
132134 })
133135 }
@@ -138,7 +140,7 @@ func TestForEach(t *testing.T) {
138140 t .Parallel ()
139141 f := func () {
140142 ints := []int {1 }
141- ForEach (ints , func (val * int ) {
143+ iter . ForEach (ints , func (val * int ) {
142144 panic ("super bad thing happened" )
143145 })
144146 }
@@ -148,7 +150,7 @@ func TestForEach(t *testing.T) {
148150 t .Run ("mutating inputs is fine" , func (t * testing.T ) {
149151 t .Parallel ()
150152 ints := []int {1 , 2 , 3 , 4 , 5 }
151- ForEach (ints , func (val * int ) {
153+ iter . ForEach (ints , func (val * int ) {
152154 * val += 1
153155 })
154156 require .Equal (t , []int {2 , 3 , 4 , 5 , 6 }, ints )
@@ -157,7 +159,7 @@ func TestForEach(t *testing.T) {
157159 t .Run ("huge inputs" , func (t * testing.T ) {
158160 t .Parallel ()
159161 ints := make ([]int , 10000 )
160- ForEach (ints , func (val * int ) {
162+ iter . ForEach (ints , func (val * int ) {
161163 * val = 1
162164 })
163165 expected := make ([]int , 10000 )
@@ -479,7 +481,7 @@ func BenchmarkForEach(b *testing.B) {
479481 b .Run (strconv .Itoa (count ), func (b * testing.B ) {
480482 ints := make ([]int , count )
481483 for i := 0 ; i < b .N ; i ++ {
482- ForEach (ints , func (i * int ) {
484+ iter . ForEach (ints , func (i * int ) {
483485 * i = 0
484486 })
485487 }
0 commit comments