wcs/tests/test_misc.py

27 lines
1.1 KiB
Python

import pytest
from wcs.qommon.form import FileSizeWidget
from wcs.qommon.humantime import humanduration2seconds, seconds2humanduration
def test_parse_file_size():
assert FileSizeWidget.parse_file_size('17') == 17
assert FileSizeWidget.parse_file_size('17o') == 17
assert FileSizeWidget.parse_file_size('17 K') == 17*10**3
assert FileSizeWidget.parse_file_size('17 M') == 17*10**6
assert FileSizeWidget.parse_file_size('17 Mo') == 17*10**6
assert FileSizeWidget.parse_file_size('17 MB') == 17*10**6
assert FileSizeWidget.parse_file_size('17 Kio') == 17*2**10
assert FileSizeWidget.parse_file_size('17 Mio') == 17*2**20
assert FileSizeWidget.parse_file_size('17K') == 17*10**3
assert FileSizeWidget.parse_file_size('17 K') == 17*10**3
assert FileSizeWidget.parse_file_size(' 17 K ') == 17*10**3
def test_parse_invalid_file_size():
for test_value in ('17i', 'hello', '0.4K', '2G'):
with pytest.raises(ValueError):
FileSizeWidget.parse_file_size(test_value)
def test_humantime():
for x in range(3, 100000, 13):
assert humanduration2seconds(seconds2humanduration(x)) == x