Beispiel #1
0
func ti(t *testing.T, pg prime.Generator, min, max uint64, known []uint64) {
	var i int
	pg.Iterate(min, max, func(prime uint64) (terminate bool) {
		if i == len(known) {
			t.Errorf("%s.Iterate(%d, %d) returning too many primes.",
				reflect.TypeOf(pg), min, max)
			return true
		}
		if prime != known[i] {
			t.Errorf("%s.Iterate(%d, %d) = %d for %dth prime.  %d expected.",
				reflect.TypeOf(pg), min, max, prime, i+1, known[i])
			return true
		}
		i++
		return
	})
	if i != len(known) {
		t.Errorf("%s.Iterate(%d, %d) didn't find all primes.",
			reflect.TypeOf(pg), min, max)
	}
}