diff --git a/tests/FilesT.cpp b/tests/FilesT.cpp index 8d44b566..a0fd78e1 100644 --- a/tests/FilesT.cpp +++ b/tests/FilesT.cpp @@ -152,37 +152,37 @@ TEST_CASE("[Files] Full hierarchy") synth.loadSfzFile(fs::current_path() / "tests/TestFiles/basic_hierarchy.sfz"); REQUIRE(synth.getNumRegions() == 8); for (int i = 0; i < synth.getNumRegions(); ++i) { - REQUIRE(synth.getRegionView(i)->width == 40.0f); + REQUIRE(synth.getRegionView(i)->width == 0.4_a); } - REQUIRE(synth.getRegionView(0)->pan == 30.0f); + REQUIRE(synth.getRegionView(0)->pan == 0.3_a); REQUIRE(synth.getRegionView(0)->delay == 67); REQUIRE(synth.getRegionView(0)->keyRange == sfz::Range(60, 60)); - REQUIRE(synth.getRegionView(1)->pan == 30.0f); + REQUIRE(synth.getRegionView(1)->pan == 0.3_a); REQUIRE(synth.getRegionView(1)->delay == 67); REQUIRE(synth.getRegionView(1)->keyRange == sfz::Range(61, 61)); - REQUIRE(synth.getRegionView(2)->pan == 30.0f); + REQUIRE(synth.getRegionView(2)->pan == 0.3_a); REQUIRE(synth.getRegionView(2)->delay == 56); REQUIRE(synth.getRegionView(2)->keyRange == sfz::Range(50, 50)); - REQUIRE(synth.getRegionView(3)->pan == 30.0f); + REQUIRE(synth.getRegionView(3)->pan == 0.3_a); REQUIRE(synth.getRegionView(3)->delay == 56); REQUIRE(synth.getRegionView(3)->keyRange == sfz::Range(51, 51)); - REQUIRE(synth.getRegionView(4)->pan == -10.0f); + REQUIRE(synth.getRegionView(4)->pan == -0.1_a); REQUIRE(synth.getRegionView(4)->delay == 47); REQUIRE(synth.getRegionView(4)->keyRange == sfz::Range(40, 40)); - REQUIRE(synth.getRegionView(5)->pan == -10.0f); + REQUIRE(synth.getRegionView(5)->pan == -0.1_a); REQUIRE(synth.getRegionView(5)->delay == 47); REQUIRE(synth.getRegionView(5)->keyRange == sfz::Range(41, 41)); - REQUIRE(synth.getRegionView(6)->pan == -10.0f); + REQUIRE(synth.getRegionView(6)->pan == -0.1_a); REQUIRE(synth.getRegionView(6)->delay == 36); REQUIRE(synth.getRegionView(6)->keyRange == sfz::Range(30, 30)); - REQUIRE(synth.getRegionView(7)->pan == -10.0f); + REQUIRE(synth.getRegionView(7)->pan == -0.1_a); REQUIRE(synth.getRegionView(7)->delay == 36); REQUIRE(synth.getRegionView(7)->keyRange == sfz::Range(31, 31)); } diff --git a/tests/RegionT.cpp b/tests/RegionT.cpp index 1beebaa6..c450b7fb 100644 --- a/tests/RegionT.cpp +++ b/tests/RegionT.cpp @@ -452,66 +452,63 @@ TEST_CASE("[Region] Parsing opcodes") { REQUIRE(region.pan == 0.0f); region.parseOpcode({ "pan", "4.2" }); - REQUIRE(region.pan == 4.2f); + REQUIRE(region.pan == 0.042_a); region.parseOpcode({ "pan", "-4.2" }); - REQUIRE(region.pan == -4.2f); + REQUIRE(region.pan == -0.042_a); region.parseOpcode({ "pan", "-123" }); - REQUIRE(region.pan == -100.0f); + REQUIRE(region.pan == -1.0_a); region.parseOpcode({ "pan", "132" }); - REQUIRE(region.pan == 100.0f); + REQUIRE(region.pan == 1.0_a); } SECTION("pan_oncc") { - REQUIRE(!region.panCC); + REQUIRE(region.panCC.empty()); region.parseOpcode({ "pan_oncc45", "4.2" }); - REQUIRE(region.panCC); - REQUIRE(region.panCC->cc == 45); - REQUIRE(region.panCC->value == 4.2f); + REQUIRE(region.panCC.contains(45)); + REQUIRE(region.panCC[45] == 0.042_a); } SECTION("width") { - REQUIRE(region.width == 100.0f); + REQUIRE(region.width == 1.0_a); region.parseOpcode({ "width", "4.2" }); - REQUIRE(region.width == 4.2f); + REQUIRE(region.width == 0.042_a); region.parseOpcode({ "width", "-4.2" }); - REQUIRE(region.width == -4.2f); + REQUIRE(region.width == -0.042_a); region.parseOpcode({ "width", "-123" }); - REQUIRE(region.width == -100.0f); + REQUIRE(region.width == -1.0_a); region.parseOpcode({ "width", "132" }); - REQUIRE(region.width == 100.0f); + REQUIRE(region.width == 1.0_a); } SECTION("width_oncc") { - REQUIRE(!region.widthCC); + REQUIRE(region.widthCC.empty()); region.parseOpcode({ "width_oncc45", "4.2" }); - REQUIRE(region.widthCC); - REQUIRE(region.widthCC->cc == 45); - REQUIRE(region.widthCC->value == 4.2f); + REQUIRE(region.widthCC.contains(45)); + REQUIRE(region.widthCC[45] == 0.042_a); } SECTION("position") { REQUIRE(region.position == 0.0f); region.parseOpcode({ "position", "4.2" }); - REQUIRE(region.position == 4.2f); + REQUIRE(region.position == 0.042_a); region.parseOpcode({ "position", "-4.2" }); - REQUIRE(region.position == -4.2f); + REQUIRE(region.position == -0.042_a); region.parseOpcode({ "position", "-123" }); - REQUIRE(region.position == -100.0f); + REQUIRE(region.position == -1.0_a); region.parseOpcode({ "position", "132" }); - REQUIRE(region.position == 100.0f); + REQUIRE(region.position == 1.0_a); } SECTION("position_oncc") { - REQUIRE(!region.positionCC); + REQUIRE(region.positionCC.empty()); region.parseOpcode({ "position_oncc45", "4.2" }); - REQUIRE(region.positionCC); - REQUIRE(region.positionCC->cc == 45); - REQUIRE(region.positionCC->value == 4.2f); + REQUIRE(region.positionCC.contains(45)); + REQUIRE(region.positionCC[45] == 0.042_a); } SECTION("amp_keycenter") @@ -1431,6 +1428,17 @@ TEST_CASE("[Region] Parsing opcodes") REQUIRE(region.selfMask == SfzSelfMask::dontMask); } + SECTION("amplitude") + { + REQUIRE(region.amplitude == 1.0_a ); + region.parseOpcode({ "amplitude", "40" }); + REQUIRE(region.amplitude == 0.4_a ); + region.parseOpcode({ "amplitude", "-40" }); + REQUIRE(region.amplitude == 0_a ); + region.parseOpcode({ "amplitude", "140" }); + REQUIRE(region.amplitude == 1.0_a ); + } + SECTION("amplitude_cc") { REQUIRE(region.amplitudeCC.empty());