feat: expand VST3 registry to 52 plugins and remove unrecognized tokens
- Add 42 new VST3 plugins to registry (FabFilter, Ozone 12, Diva, Pigments, Electra, Kontakt 7, Gullfoss, Trackspacer, ShaperBox, VC series, Arcade) - Remove RENDER_CFG, PROJBAY, WAK tokens that caused REAPER warnings - GUIDs sourced from REAPER scan file (reaper-vstplugins64.ini) - New plugins have empty preset data (to be extracted incrementally) - 72 tests passing
This commit is contained in:
@@ -416,8 +416,12 @@ class TestVST3PresetData:
|
||||
finally:
|
||||
Path(tmp_path).unlink(missing_ok=True)
|
||||
|
||||
def test_all_registry_plugins_have_preset_data(self):
|
||||
"""All 10 VST3 plugins in VST3_REGISTRY have preset data."""
|
||||
def test_registry_plugins_with_preset_data_are_in_output(self):
|
||||
"""VST3 plugins with non-empty preset data include that data in output.
|
||||
|
||||
New plugins added with empty preset lists ([]) are handled gracefully —
|
||||
vst3_element() only appends preset lines when preset_data is truthy.
|
||||
"""
|
||||
meta = SongMeta(bpm=95, key="Am", title="VST3 Preset Test")
|
||||
# Use actual filenames from registry so _build_plugin recognizes them as VST3
|
||||
plugins = [
|
||||
@@ -436,10 +440,11 @@ class TestVST3PresetData:
|
||||
try:
|
||||
builder.write(tmp_path)
|
||||
content = Path(tmp_path).read_text(encoding="utf-8")
|
||||
# Check that plugins WITH preset data have that data in output
|
||||
for name, preset_lines in RPPBuilder.VST3_PRESETS.items():
|
||||
assert len(preset_lines) > 0, f"{name} has no preset lines"
|
||||
# Check first preset line — most distinctive, no collision risk
|
||||
first_line = preset_lines[0]
|
||||
assert first_line in content, f"{name} preset line not found in output"
|
||||
if len(preset_lines) > 0:
|
||||
# Check first preset line — most distinctive, no collision risk
|
||||
first_line = preset_lines[0]
|
||||
assert first_line in content, f"{name} preset line not found in output"
|
||||
finally:
|
||||
Path(tmp_path).unlink(missing_ok=True)
|
||||
|
||||
Reference in New Issue
Block a user