mvp random generator & list operation evaluator

This commit is contained in:
2023-02-12 00:21:21 +02:00
parent e04d202ad5
commit 707e700e37
9 changed files with 387 additions and 190 deletions

View File

@ -46,8 +46,8 @@ def test_parsing_text(pattern: str):
("q2 eq3", [2, 3]),
],
)
def test_pcs(pattern: str, expected: list):
assert parse_expression(pattern).pcs() == expected
def test_pitch_classes(pattern: str, expected: list):
assert parse_expression(pattern).pitch_classes() == expected
# TODO: Add tests for octaves
# ("__6 _0 _1 _2 _3 _4 _5 _6 0 1 2 3 4 5 6 ^0 ^1 ^2 ^3 ^4 ^5 ^6 ^^0", [-2, -1, -1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2]),

View File

@ -15,11 +15,11 @@ from ziffers import scale
],
)
def test_notenames(name: str, expected: int):
assert scale.note_to_midi(name) == expected
assert scale.note_name_to_midi(name) == expected
@pytest.mark.parametrize(
"pcs,expected",
"pitch_classes,expected",
[
(
list(range(-9, 10)),
@ -47,7 +47,7 @@ def test_notenames(name: str, expected: int):
),
],
)
def test_note_to_midi(pcs: str, expected: int):
def test_note_to_midi(pitch_classes: str, expected: int):
assert [
scale.note_from_pc(root=60, pitch_class=val, intervals="Ionian") for val in pcs
scale.note_from_pc(root=60, pitch_class=val, intervals="Ionian") for val in pitch_classes
] == expected