summaryrefslogtreecommitdiffstats
path: root/lang/python/python-schedule/test.sh
blob: 90d42eb949056917d7b099fc55e1b9012313e886 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/sh

[ "$1" = "python3-schedule" ] || exit 0

python3 - << EOF
import sys
import schedule

# Verify core scheduling API
results = []

def job():
    results.append(1)

# Schedule a job and verify it is registered
schedule.every(1).hours.do(job)
assert len(schedule.jobs) == 1, "expected 1 job"

# run_pending should not call the job (not yet due)
schedule.run_pending()
assert len(results) == 0, "job should not have run yet"

# run_all forces all jobs to run regardless of schedule
schedule.run_all()
assert len(results) == 1, "job should have run via run_all"

schedule.clear()
assert len(schedule.jobs) == 0, "jobs should be cleared"

sys.exit(0)
EOF