Cleanup
ci / checks (push) Failing after 23m22s

This commit is contained in:
khodowany
2026-10-08 02:13:45 -05:00
parent 300097a37e
commit bc7baea7c4
88 changed files with 18844 additions and 1335 deletions
+20
View File
@@ -0,0 +1,20 @@
"""Exact role scores protect musical choices, notation, IDs and tablature."""
import generator.composition_types
import generator.composition
import generator.source
import json
import pathlib
import unittest
import tests.solo_fixtures
class OutputContract(unittest.TestCase):
def test_complete_roles_including_learned_fallback_match_reviewed_output(self):
root = pathlib.Path(__file__).resolve().parents[1]
expected = json.loads((root / 'tests/fixtures/role_outputs.json').read_text())
source = generator.source.SourceAnalysis.read(tests.solo_fixtures.song(count=2, chords=('Dm7', 'G7')))
for role in generator.composition_types.ROLES:
with self.subTest(role=role):
settings = {'predict': True} if role.endswith('_solo') else {}
actual = generator.composition.generate_role(source, role, root / 'data', settings)['document']
self.assertEqual(actual, expected[role])