soundchanger/tests/test_is_valid_change.py
2023-02-21 15:25:53 +09:00

33 lines
1.2 KiB
Python

from soundchanger.change import is_valid_change
import pytest
def test_valid_change():
assert is_valid_change('a>b/c_d') == True
assert is_valid_change('a>b/c__d') == True
assert is_valid_change('a>b/c_') == True
assert is_valid_change('a>b/_d') == True
assert is_valid_change('a>b') == True
assert is_valid_change('a>b/_') == True
assert is_valid_change('a>b/') == True
def test_invalid_change():
assert is_valid_change('>') == False
assert is_valid_change('>b') == False
assert is_valid_change('a>b/a') == False
assert is_valid_change('>/_') == False
assert is_valid_change('a>b//c_d') == False
def test_raises_value_error():
with pytest.raises(ValueError):
is_valid_change('>', ignore_errors=False)
with pytest.raises(ValueError):
is_valid_change('>', ignore_errors=False)
with pytest.raises(ValueError):
is_valid_change('>b', ignore_errors=False)
with pytest.raises(ValueError):
is_valid_change('a>b/a', ignore_errors=False)
with pytest.raises(ValueError):
is_valid_change('>/_', ignore_errors=False)
with pytest.raises(ValueError):
is_valid_change('a>b//c_d', ignore_errors=False)