--- a/pubsub/endtoend_test.go
+++ b/pubsub/endtoend_test.go
@@ -66,7 +66,7 @@
 		// Simulate time taken to process m, while continuing to process more messages.
 		go func() {
 			// Some messages will need to have their ack deadline extended due to this delay.
-			delay := rand.Intn(int(ackDeadline * 3))
+			delay := rand.Int63n(int64(ackDeadline * 3))
 			time.After(time.Duration(delay))
 			m.Done(true)
 		}()
