Browse Source

eth/downloader: fix throttling test to be less timing dependent

Péter Szilágyi 10 years ago
parent
commit
4b2dd44711
1 changed files with 7 additions and 3 deletions
  1. 7 3
      eth/downloader/downloader_test.go

+ 7 - 3
eth/downloader/downloader_test.go

@@ -273,9 +273,13 @@ func TestThrottling(t *testing.T) {
 	}()
 	// Iteratively take some blocks, always checking the retrieval count
 	for total := 0; total < targetBlocks; {
-		// Sleep a bit for sync to complete
-		time.Sleep(500 * time.Millisecond)
-
+		// Wait a bit for sync to complete
+		for start := time.Now(); time.Since(start) < 3*time.Second; {
+			time.Sleep(25 * time.Millisecond)
+			if len(tester.downloader.queue.blockPool) == blockCacheLimit {
+				break
+			}
+		}
 		// Fetch the next batch of blocks
 		took := tester.downloader.TakeBlocks()
 		if len(took) != blockCacheLimit {