35 lines
1.0 KiB
Python
35 lines
1.0 KiB
Python
import time
|
|
import random
|
|
from sys import stdout
|
|
import argparse
|
|
|
|
ap = argparse.ArgumentParser()
|
|
ap.add_argument("-b-min", type=int, help="burst minimum", default=1)
|
|
ap.add_argument("-b-max", type=int, help="burst maximum", default=20)
|
|
ap.add_argument("-d-min", type=int, help="sleep minimum ms", default=0)
|
|
ap.add_argument("-d-max", type=int, help="sleep maximum ms", default=3000)
|
|
ap.add_argument("-between", type=int, help="between maximum ms", default=1000)
|
|
ap.add_argument("-n", type=int, help="max to gen", default=14)
|
|
args = ap.parse_args()
|
|
|
|
random.seed(int(1000*time.time()))
|
|
|
|
def new_burst():
|
|
return random.randint(args.b_min, args.b_max)
|
|
def new_between():
|
|
return random.randint(0, args.between) / 1000.0
|
|
def new_delay():
|
|
return random.randint(args.d_min, args.d_max) / 1000.0
|
|
|
|
burst = new_burst()
|
|
while True:
|
|
line = random.randint(0, args.n-1)
|
|
if burst:
|
|
print(line, file=stdout)
|
|
stdout.flush()
|
|
time.sleep(new_between())
|
|
burst -= 1
|
|
if not burst:
|
|
time.sleep(new_delay())
|
|
burst = new_burst()
|