from __future__ import annotations
import time
import pytest
from python_utils import converters
import progressbar
@pytest.mark.parametrize(
'name,markers',
[
('line arrows', ''),
('block arrows', ''),
('wheels', ''),
],
)
@pytest.mark.parametrize('as_unicode', [True, False])
def test_markers(name, markers: bytes | str, as_unicode) -> None:
if as_unicode:
markers = converters.to_unicode(markers)
else:
markers = converters.to_str(markers)
widgets = [
f'{name.capitalize()}: ',
progressbar.AnimatedMarker(markers=markers),
]
bar = progressbar.ProgressBar(widgets=widgets)
bar._MINIMUM_UPDATE_INTERVAL = 1e-12
for _i in bar(iter(range(24))):
time.sleep(0.001)