|
5 | 5 |
|
6 | 6 |
|
7 | 7 | def test_numeric_samples(): |
8 | | - samples = widgets.SamplesMixin(samples=10) |
9 | | - bar = progressbar.ProgressBar(widgets=[samples]) |
| 8 | + samples = 5 |
| 9 | + samples_widget = widgets.SamplesMixin(samples=samples) |
| 10 | + bar = progressbar.ProgressBar(widgets=[samples_widget]) |
10 | 11 |
|
11 | 12 | # Force updates in all cases |
12 | | - samples.INTERVAL = - timedelta(1) |
| 13 | + samples_widget.INTERVAL = timedelta(0) |
13 | 14 |
|
14 | | - bar.update(0) |
15 | | - assert samples(bar, None)[1] == [0, 0, 0] |
16 | | - bar.update(1) |
17 | | - assert samples(bar, None)[1] == [0, 0, 0, 1, 1] |
18 | | - bar.update(2) |
19 | | - assert samples(bar, None)[1] == [0, 0, 0, 1, 1, 2, 2] |
| 15 | + start = datetime(2000, 1, 1) |
| 16 | + |
| 17 | + bar.value = 1 |
| 18 | + bar.last_update_time = start + timedelta(seconds=bar.value) |
| 19 | + assert samples_widget(bar, None, True) == (None, None) |
| 20 | + |
| 21 | + for i in range(2, 6): |
| 22 | + bar.value = i |
| 23 | + bar.last_update_time = start + timedelta(seconds=i) |
| 24 | + assert samples_widget(bar, None, True) == (timedelta(0, i - 1), i - 1) |
| 25 | + |
| 26 | + bar.value = 8 |
| 27 | + bar.last_update_time = start + timedelta(seconds=bar.value) |
| 28 | + assert samples_widget(bar, None, True) == (timedelta(0, 6), 6) |
20 | 29 |
|
21 | | - assert samples(bar, None, delta=True)[1] == 2 |
| 30 | + bar.value = 10 |
| 31 | + bar.last_update_time = start + timedelta(seconds=bar.value) |
| 32 | + assert samples_widget(bar, None, True) == (timedelta(0, 7), 7) |
| 33 | + |
| 34 | + bar.value = 20 |
| 35 | + bar.last_update_time = start + timedelta(seconds=bar.value) |
| 36 | + assert samples_widget(bar, None, True) == (timedelta(0, 16), 16) |
| 37 | + |
| 38 | + assert samples_widget(bar, None)[1] == [4, 5, 8, 10, 20] |
22 | 39 |
|
23 | 40 |
|
24 | 41 | def test_timedelta_samples(): |
25 | | - samples = widgets.SamplesMixin(samples=timedelta(seconds=5)) |
26 | | - bar = progressbar.ProgressBar(widgets=[samples]) |
| 42 | + samples = timedelta(seconds=5) |
| 43 | + samples_widget = widgets.SamplesMixin(samples=samples) |
| 44 | + bar = progressbar.ProgressBar(widgets=[samples_widget]) |
27 | 45 |
|
28 | 46 | # Force updates in all cases |
29 | | - samples.INTERVAL = - timedelta(1) |
| 47 | + samples_widget.INTERVAL = timedelta(0) |
30 | 48 |
|
31 | 49 | start = datetime(2000, 1, 1) |
32 | 50 |
|
33 | 51 | bar.value = 1 |
34 | | - bar.last_update_time = start + timedelta(seconds=1) |
35 | | - assert samples(bar, None, True) == (None, None) |
| 52 | + bar.last_update_time = start + timedelta(seconds=bar.value) |
| 53 | + assert samples_widget(bar, None, True) == (None, None) |
| 54 | + |
| 55 | + for i in range(2, 6): |
| 56 | + bar.value = i |
| 57 | + bar.last_update_time = start + timedelta(seconds=i) |
| 58 | + assert samples_widget(bar, None, True) == (timedelta(0, i - 1), i - 1) |
| 59 | + |
| 60 | + bar.value = 8 |
| 61 | + bar.last_update_time = start + timedelta(seconds=bar.value) |
| 62 | + assert samples_widget(bar, None, True) == (timedelta(0, 5), 5) |
36 | 63 |
|
37 | | - bar.value = 2 |
38 | | - bar.last_update_time = start + timedelta(seconds=2) |
39 | | - assert samples(bar, None, True) == (timedelta(0, 1), 1) |
| 64 | + bar.value = 10 |
| 65 | + bar.last_update_time = start + timedelta(seconds=bar.value) |
| 66 | + assert samples_widget(bar, None, True) == (timedelta(0, 5), 5) |
40 | 67 |
|
41 | | - bar.value = 3 |
42 | | - bar.last_update_time = start + timedelta(seconds=3) |
43 | | - assert samples(bar, None, True) == (timedelta(0, 2), 2) |
| 68 | + bar.value = 20 |
| 69 | + bar.last_update_time = start + timedelta(seconds=bar.value) |
| 70 | + assert samples_widget(bar, None, True) == (timedelta(0, 10), 10) |
44 | 71 |
|
45 | | - assert samples(bar, None)[1] == [1, 2, 3, 3] |
| 72 | + assert samples_widget(bar, None)[1] == [10, 20] |
0 commit comments