"strings"
"sync"
"testing"
+ "time"
"unicode/utf8"
"github.com/stretchr/testify/require"
})
require.Equal(t, []nodeKey{{0, 0}, {0, 1}, {0, 2}, {0, 3}, {0, 4}, {0, 5}, {0, 6}, {0, 7}}, running)
+ require.Eventually(t, func() bool {
+ return summarizer.Active() == maxBuilds
+ }, 10*time.Second, time.Millisecond)
+
close(summarizer.gate)
require.NoError(t, memory.Wait(t.Context()))
require.Equal(t, maxBuilds, summarizer.peak)
f.failing = failing
}
+// Active returns the number of tasks that run now.
+func (f *fakeSummarizer) Active() int {
+ f.mutex.Lock()
+ defer f.mutex.Unlock()
+
+ return f.active
+}
+
// Tasks returns the tasks so far.
func (f *fakeSummarizer) Tasks() []Task {
f.mutex.Lock()