From 61e7da5dab204247c1eed585e34dd2d51c8db94c Mon Sep 17 00:00:00 2001 From: "5684185+vsariola@users.noreply.github.com" <5684185+vsariola@users.noreply.github.com> Date: Fri, 6 Sep 2024 22:03:52 +0300 Subject: [PATCH] test(tracker): test loading presets in fuzz tests --- tracker/model_test.go | 2 ++ tracker/presets.go | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/tracker/model_test.go b/tracker/model_test.go index 0261bf0..d3c4cdc 100644 --- a/tracker/model_test.go +++ b/tracker/model_test.go @@ -76,6 +76,8 @@ func (s *modelFuzzState) Iterate(yield func(string, func(p string, t *testing.T) s.IterateAction("AddOrderRowBefore", s.model.AddOrderRow(true), yield, seed) s.IterateAction("DeleteOrderRowForward", s.model.DeleteOrderRow(false), yield, seed) s.IterateAction("DeleteOrderRowBackward", s.model.DeleteOrderRow(true), yield, seed) + // just test loading one of the presets + s.IterateAction("LoadPreset", s.model.LoadPreset(seed%tracker.NumPresets()), yield, seed) // Tables s.IterateTable("Order", s.model.Order().Table(), yield, seed) s.IterateTable("Notes", s.model.Notes().Table(), yield, seed) diff --git a/tracker/presets.go b/tracker/presets.go index 565f86d..3cf7bfd 100644 --- a/tracker/presets.go +++ b/tracker/presets.go @@ -135,6 +135,12 @@ func (m *Model) IterateInstrumentPresets(yield InstrumentPresetYieldFunc) { } } +func NumPresets() int { + return len(instrumentPresets) +} + +// LoadPreset loads a preset from the list of instrument presets. The index +// should be within the range of 0 to NumPresets()-1. func (m *Model) LoadPreset(index int) Action { return Action{do: func() { defer m.change("LoadPreset", PatchChange, MajorChange)()