From 0dca7dbc5e3603e17716b54b31682b24ad727e75 Mon Sep 17 00:00:00 2001 From: Jean Pierre Cimalando Date: Sat, 4 Apr 2020 23:14:15 +0200 Subject: [PATCH] Add tests for oscillator_multi --- tests/FilesT.cpp | 37 +++++++++++++++++++++++++++++ tests/TestFiles/channels_multi.sfz | 6 +++++ tests/TestFiles/ramp_wave.wav | Bin 0 -> 2092 bytes 3 files changed, 43 insertions(+) create mode 100644 tests/TestFiles/channels_multi.sfz create mode 100644 tests/TestFiles/ramp_wave.wav diff --git a/tests/FilesT.cpp b/tests/FilesT.cpp index f0a4db39..51f5e40f 100644 --- a/tests/FilesT.cpp +++ b/tests/FilesT.cpp @@ -259,6 +259,43 @@ TEST_CASE("[Files] Channels (channels.sfz)") REQUIRE(synth.getRegionView(1)->isStereo()); } +TEST_CASE("[Files] Channels (channels_multi.sfz)") +{ + sfz::Synth synth; + synth.loadSfzFile(fs::current_path() / "tests/TestFiles/channels_multi.sfz"); + REQUIRE(synth.getNumRegions() == 6); + + REQUIRE(synth.getRegionView(0)->sample == "*sine"); + REQUIRE(!synth.getRegionView(0)->isStereo()); + REQUIRE(synth.getRegionView(0)->isGenerator()); + REQUIRE(!synth.getRegionView(0)->oscillator); + + REQUIRE(synth.getRegionView(1)->sample == "*sine"); + REQUIRE(synth.getRegionView(1)->isStereo()); + REQUIRE(synth.getRegionView(1)->isGenerator()); + REQUIRE(!synth.getRegionView(1)->oscillator); + + REQUIRE(synth.getRegionView(2)->sample == "ramp_wave.wav"); + REQUIRE(!synth.getRegionView(2)->isStereo()); + REQUIRE(!synth.getRegionView(2)->isGenerator()); + REQUIRE(synth.getRegionView(2)->oscillator); + + REQUIRE(synth.getRegionView(3)->sample == "ramp_wave.wav"); + REQUIRE(synth.getRegionView(3)->isStereo()); + REQUIRE(!synth.getRegionView(3)->isGenerator()); + REQUIRE(synth.getRegionView(3)->oscillator); + + REQUIRE(synth.getRegionView(4)->sample == "*sine"); + REQUIRE(!synth.getRegionView(4)->isStereo()); + REQUIRE(synth.getRegionView(4)->isGenerator()); + REQUIRE(!synth.getRegionView(4)->oscillator); + + REQUIRE(synth.getRegionView(5)->sample == "*sine"); + REQUIRE(!synth.getRegionView(5)->isStereo()); + REQUIRE(synth.getRegionView(5)->isGenerator()); + REQUIRE(!synth.getRegionView(5)->oscillator); +} + TEST_CASE("[Files] sw_default") { sfz::Synth synth; diff --git a/tests/TestFiles/channels_multi.sfz b/tests/TestFiles/channels_multi.sfz new file mode 100644 index 00000000..8146ba45 --- /dev/null +++ b/tests/TestFiles/channels_multi.sfz @@ -0,0 +1,6 @@ + sample=*sine + sample=*sine oscillator_multi=3 + sample=ramp_wave.wav oscillator=on + sample=ramp_wave.wav oscillator=on oscillator_multi=3 + sample=*sine oscillator_multi=1 + sample=*sine oscillator_multi=2 diff --git a/tests/TestFiles/ramp_wave.wav b/tests/TestFiles/ramp_wave.wav new file mode 100644 index 0000000000000000000000000000000000000000..838d85566d14272034eddd1e3f4e87c2f451b747 GIT binary patch literal 2092 zcmWO6Q)=8FMFYwr$&-JK45v+f(0pJV-5I)KP90Z||TT8Br3!~aK+B14XZQN|cUTV40S`rFg45! zbHl`NHQWq$!^H?S!i;bu#7H&LjC3Q#C^gEAa-&3~iZqcfQjAuk&1g4Tj8S9E7&k_Y zRb$OqH&%>O&!a0POMk!&3d<9Y)~7_2Dd?MR2$7kw^3|T zo6IJ+No-b|&1Sb*Y*Aax7Pm!gRa?zgw^eLY+srn%O>9@&&33n4>`*(*4!1+>R6EU1 zw^Qs=yUZ@POYBy=&2G0_>`{Bn9=AvAReQ}|w^!^_`^-MKPwZFw&3?CE98d?$0e3)H zWsP+f7@3$E96ECB;2<8PgM1JU;UPN2hu|yJ~ zI3B0td>l^T2|B?i;3S@;lYA0R;VC-Br{FZ6rqg^H&fpn3!)M?uo~5&V7S7>0I>+bW zJf5fXd>$^~1-if&;38h6i+m9-;U&7nm*6s9rptU8uHY5A!dKubUZtyi6|Uhmy2jVw zI$o#id>wA!4Z6WM;3nRrn|u>);Vrtwx8OG3rrUfQ?%*A|!*}2=-le;I7w+Lby2tn6 zKHjJMd>;Vu6 z_&)?FNbr9gFbYNCC=eB+QdEu#(J&fC<7f~aqf>N_4lytW#o!na6Jt_LjtQ|a7RBON z5F2AtY>o|aFb>7xI1m@(Qe2J;@h~36<9HAs<5PT&4+$^6J_E|kQp;mX3h*j7(_uF1X(Z(W#KH46|+)S&I;Ku8)f5ckR7vAcFqnt zFbCz}9FP-pQclhZxiA;y;#`m$b5m~44S6sR<>5S#7xPkH&I|c4ALZkGkRS6?e$EdC zumBa{0#FbOQb8^Vg|HA6;zCdu3sYe(3`MXA72zUK6pK<(E(*o47!~7UP#lX>aV`!e zumqLh5>OILQb{ferLYv0;!;o=OH*ks4P~$lmEkf_7RypuE(;PRNtS>THCps2l~z`H zCClk@wwx~~%j@#Cye}^+=nA%iuOKVxingM!D1&vd4fesZlCESc`AV{~u52s&$}&WU z*bpBgtLQ4WimxK8>Z-P?uPUqQYPOoMCade}wz{t_Yv>xbhOZ%O>YBEuuPJNkTDF$2 zC2Q;2wzjV=>*zYRj;|x@>bkbBuPf{6dbXagC+q9_w!W_~8|VhMfo~u~b*K&Xp)yQ| z*)Sg_8|sF(p>HS~=|;AZZzLP*#vsc$Nq>1MW>Zzh}T=C-+S zE?ejpwuNsY!*#d~_u;aoZfRTkma>&@Wn1}HvbAn)Tl?0sjc#Mx_%^bwZfo26wz8dW zXWRL9vb}C^+xzyigYIBE_ztq8?r1yujPWIOpzva{}NJNwSEi|%5(_%5=m?rOXG zuCkl%X1n=rvb*kXyZi34hwfo}_#U#S?rD4ap0bzjWqbKvGD1h#2p=JP>)y7v?=Ac2 zKDLkVBm3&Uwy*Ci`{{nRpYJF8>;AUC?=J`F0d{~NAP4G!cAy_92kAj}kRK!m>%n%g RA1sIHA$Eu#BDL05{{!ji#B=}v literal 0 HcmV?d00001