diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5fe9df3ad96267f08b378c2ad17f281d9080d390..c6d67ebdb6b1fbc66c1e462e90661b98bb506514 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,6 +11,7 @@ debian_stable_i386_deb: - ./tar_em_up.sh -B - cd .. - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null + - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" @@ -31,6 +32,7 @@ debian_stable_amd64_deb: - ./tar_em_up.sh -B - cd .. - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null + - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" @@ -51,6 +53,7 @@ debian_stretch_amd64_deb: - ./tar_em_up.sh -B - cd .. - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null + - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" @@ -72,6 +75,7 @@ ubuntu_14.04_i386_deb: - cd .. - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null - cd scripts + - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" @@ -93,6 +97,7 @@ ubuntu_14.04_amd64_deb: - cd .. - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null - cd scripts + - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" @@ -114,6 +119,7 @@ ubuntu_16.04_amd64_deb: - cd .. - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null - cd scripts + - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" @@ -131,6 +137,7 @@ osx_amd64_dmg: - cd l2ork_addons - ./tar_em_up.sh -X - cd ../scripts + - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" @@ -163,6 +170,7 @@ windows_i386_installer: - cd l2ork_addons - ./tar_em_up.sh -Z - cd ../scripts + - ../packages/win32_inno/build/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -noaudio external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" @@ -180,6 +188,7 @@ debian_stable_arm_deb: - cd l2ork_addons - ./tar_em_up.sh -r - cd .. + - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio -send "init dollarzero \$0" scripts/regression_tests.pd - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd artifacts: name: "$CI_RUNNER_DESCRIPTION" diff --git a/scripts/manual_tests/message-perf.pd b/scripts/manual_tests/message-perf.pd new file mode 100644 index 0000000000000000000000000000000000000000..59146ecd8f34c7598e371e47aa66f0fb38197dd1 --- /dev/null +++ b/scripts/manual_tests/message-perf.pd @@ -0,0 +1,72 @@ +#N canvas 219 60 984 603 10; +#X msg 272 255 10000; +#X obj 272 277 until; +#X obj 207 206 t b b b; +#X obj 211 256 realtime; +#X obj 211 329 +; +#X obj 211 384 /; +#X obj 211 299 t a b; +#X obj 238 330 f; +#X obj 238 352 + 1; +#X obj 211 351 t a; +#X obj 173 384 t a; +#X obj 196 464 f; +#X obj 68 464 f; +#X obj 180 176 t b b; +#X obj 68 382 t b b; +#X floatatom 68 486 5 0 0 0 worst - -, f 5; +#X floatatom 196 486 5 0 0 0 average - -, f 5; +#X obj 125 384 moses; +#X obj 243 26 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 243 46 metro 150; +#X obj 272 299 list append one two three; +#X text 312 92 nothing; +#X text 632 92 \$0; +#X text 605 138 set/unsetcurrent: 13/36; +#X text 285 138 set/unsetcurrent:11.5/32; +#X text 792 92 list one two three four \$0 \$1; +#X text 765 138 set/unsetcurrent: 17/37; +#X text 765 118 nothing: 14.5/35.5; +#X text 605 118 nothing: 8/17; +#X text 285 118 nothing: 5/12; +#X text 472 92 42; +#X text 445 118 nothing: 7/17; +#X text 445 138 set/unsetcurrent:14/35; +#X text 285 158 cached glist:4.5/11; +#X text 605 158 cached glist: 8.7/19; +#X text 445 158 cached glist:5.6/15; +#X text 765 158 cached glist: 13/32; +#X text 285 178 semicolon fix: 4/12.5; +#X text 445 178 semicolon fix: 6/17; +#X text 605 178 cached glist: 6.5/19; +#X msg 272 321 list one two three four \$0 \$1; +#X text 765 178 cached glist: 13/35; +#X connect 0 0 1 0; +#X connect 1 0 20 0; +#X connect 2 0 3 1; +#X connect 2 1 0 0; +#X connect 2 2 3 0; +#X connect 3 0 6 0; +#X connect 4 0 9 0; +#X connect 5 0 11 1; +#X connect 6 0 4 0; +#X connect 6 0 17 0; +#X connect 6 1 7 0; +#X connect 7 0 8 0; +#X connect 8 0 7 1; +#X connect 8 0 5 1; +#X connect 9 0 5 0; +#X connect 9 0 4 1; +#X connect 10 0 12 1; +#X connect 10 0 17 1; +#X connect 11 0 16 0; +#X connect 12 0 15 0; +#X connect 13 0 14 0; +#X connect 13 1 2 0; +#X connect 14 0 12 0; +#X connect 14 1 11 0; +#X connect 17 1 10 0; +#X connect 18 0 19 0; +#X connect 19 0 13 0; +#X connect 20 0 40 0; diff --git a/scripts/manual_tests/message_errors.pd b/scripts/manual_tests/message_errors.pd new file mode 100644 index 0000000000000000000000000000000000000000..aef80b9f6c22eb8b0371dde6f48b657f61ffccf9 --- /dev/null +++ b/scripts/manual_tests/message_errors.pd @@ -0,0 +1,37 @@ +#N canvas 3 60 508 425 10; +#X msg 21 41 \; \$1; +#X msg 21 131 \; \$0; +#X msg 21 220 42; +#X msg 21 251 \; \$1; +#X text 21 11 1) dollar target is out of range; +#X text 21 101 2) dollar target is dollar zero; +#X text 21 191 3) dollar target isn't a symbol; +#X text 251 11 4) not enough args to dollsym; +#X msg 251 67 \; \$1-foo; +#X msg 251 36 bang; +#X text 299 59 ERROR: double doll sign; +#X msg 251 130 bang; +#X text 251 101 5) no such object; +#X msg 251 161 \; 42; +#X msg 251 230 bang; +#X msg 251 261 \; foo \$1; +#X obj 329 228 r foo; +#X obj 329 250 == 0; +#X floatatom 329 272 5 0 0 0 - - -, f 5; +#X msg 251 340 bang; +#X text 251 201 6) dollar argument number out of range; +#X text 251 311 7) dollsym argument number out of range; +#X obj 379 360 sel 0-foo; +#X obj 379 338 r seven; +#X msg 251 371 \; seven symbol \$1-foo; +#X obj 430 382 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X connect 2 0 3 0; +#X connect 9 0 8 0; +#X connect 11 0 13 0; +#X connect 14 0 15 0; +#X connect 16 0 17 0; +#X connect 17 0 18 0; +#X connect 19 0 24 0; +#X connect 22 1 25 0; +#X connect 23 0 22 0; diff --git a/scripts/manual_tests/trigger-perf.pd b/scripts/manual_tests/trigger-perf.pd new file mode 100644 index 0000000000000000000000000000000000000000..c2d7b121142cd4c1f4f29412833edc202ece6f8b --- /dev/null +++ b/scripts/manual_tests/trigger-perf.pd @@ -0,0 +1,116 @@ +#N canvas 311 60 867 603 10; +#X msg 712 255 10000; +#X obj 712 277 until; +#X obj 712 299 f; +#X obj 712 380 f; +#X obj 742 380 f; +#X msg 620 154 bang; +#X obj 647 206 t b b b; +#X obj 651 256 realtime; +#X obj 651 329 +; +#X obj 651 384 /; +#X obj 651 299 t a b; +#X obj 678 330 f; +#X obj 678 352 + 1; +#X obj 651 351 t a; +#X obj 613 384 t a; +#X obj 636 464 f; +#X obj 508 464 f; +#X obj 620 176 t b b; +#X obj 508 382 t b b; +#X floatatom 508 486 5 0 0 0 worst - -, f 5; +#X floatatom 636 486 5 0 0 0 average - -, f 5; +#X obj 565 384 moses; +#X msg 272 255 10000; +#X obj 272 277 until; +#X obj 272 299 f; +#X obj 272 380 f; +#X obj 302 380 f; +#X msg 180 154 bang; +#X obj 207 206 t b b b; +#X obj 211 256 realtime; +#X obj 211 329 +; +#X obj 211 384 /; +#X obj 211 299 t a b; +#X obj 238 330 f; +#X obj 238 352 + 1; +#X obj 211 351 t a; +#X obj 173 384 t a; +#X obj 196 464 f; +#X obj 68 464 f; +#X obj 180 176 t b b; +#X obj 68 382 t b b; +#X floatatom 68 486 5 0 0 0 worst - -, f 5; +#X floatatom 196 486 5 0 0 0 average - -, f 5; +#X obj 125 384 moses; +#X obj 243 26 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 243 46 metro 150; +#X obj 293 535 /; +#X floatatom 293 557 5 0 0 0 ratio - -, f 5; +#X obj 243 68 t b b; +#X obj 272 321 t f f; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 2 0 4 0; +#X connect 5 0 17 0; +#X connect 6 0 7 1; +#X connect 6 1 0 0; +#X connect 6 2 7 0; +#X connect 7 0 10 0; +#X connect 8 0 13 0; +#X connect 9 0 15 1; +#X connect 10 0 8 0; +#X connect 10 0 21 0; +#X connect 10 1 11 0; +#X connect 11 0 12 0; +#X connect 12 0 11 1; +#X connect 12 0 9 1; +#X connect 13 0 9 0; +#X connect 13 0 8 1; +#X connect 14 0 16 1; +#X connect 14 0 21 1; +#X connect 15 0 20 0; +#X connect 15 0 46 1; +#X connect 16 0 19 0; +#X connect 17 0 18 0; +#X connect 17 1 6 0; +#X connect 18 0 16 0; +#X connect 18 1 15 0; +#X connect 21 1 14 0; +#X connect 22 0 23 0; +#X connect 23 0 24 0; +#X connect 24 0 49 0; +#X connect 27 0 39 0; +#X connect 28 0 29 1; +#X connect 28 1 22 0; +#X connect 28 2 29 0; +#X connect 29 0 32 0; +#X connect 30 0 35 0; +#X connect 31 0 37 1; +#X connect 32 0 30 0; +#X connect 32 0 43 0; +#X connect 32 1 33 0; +#X connect 33 0 34 0; +#X connect 34 0 33 1; +#X connect 34 0 31 1; +#X connect 35 0 31 0; +#X connect 35 0 30 1; +#X connect 36 0 38 1; +#X connect 36 0 43 1; +#X connect 37 0 42 0; +#X connect 37 0 46 0; +#X connect 38 0 41 0; +#X connect 39 0 40 0; +#X connect 39 1 28 0; +#X connect 40 0 38 0; +#X connect 40 1 37 0; +#X connect 43 1 36 0; +#X connect 44 0 45 0; +#X connect 45 0 48 0; +#X connect 46 0 47 0; +#X connect 48 0 27 0; +#X connect 48 1 5 0; +#X connect 49 0 25 0; +#X connect 49 1 26 0; diff --git a/scripts/regression_tests.pd b/scripts/regression_tests.pd new file mode 100644 index 0000000000000000000000000000000000000000..da194f7fac14624f708cce6d880440d88e1c431c --- /dev/null +++ b/scripts/regression_tests.pd @@ -0,0 +1,43 @@ +#N canvas 55 176 582 396 12; +#X obj 395 186 r \$0-result; +#X obj 395 251 route 0; +#X obj 427 305 print failure; +#X obj 441 213 tgl 28 0 empty empty force\ failure 31 11 0 10 -262144 +-1 -1 0 1; +#X obj 159 79 bng 31 250 50 0 empty empty Run_all 39 13 0 10 -262144 +-1 -1; +#X obj 56 25 r init; +#X obj 355 96 route dollarzero; +#X text 117 25 <- we start Pd with a message \$0 for the binbuf test +; +#X obj 395 276 t b a; +#X obj 395 356 s pd; +#X obj 56 50 trigger bang bang anything; +#X msg 56 75 gui; +#X obj 56 100 pdinfo; +#X obj 56 125 sel 0; +#X obj 56 175 s pd; +#X msg 395 331 quit 1; +#X msg 56 150 quit; +#X obj 145 121 rtest msg_dollarzero; +#X obj 145 176 rtest msg_dollarzero_semi; +#X obj 145 232 rtest msg_click; +#X obj 355 121 rtest binbuf_dollarzero; +#X connect 0 0 1 0; +#X connect 1 0 8 0; +#X connect 3 0 1 1; +#X connect 4 0 17 0; +#X connect 5 0 10 0; +#X connect 6 0 20 0; +#X connect 8 0 15 0; +#X connect 8 1 2 0; +#X connect 10 0 11 0; +#X connect 10 1 17 0; +#X connect 10 2 6 0; +#X connect 11 0 12 0; +#X connect 12 0 13 0; +#X connect 13 0 16 0; +#X connect 15 0 9 0; +#X connect 16 0 14 0; +#X connect 17 0 18 0; +#X connect 18 0 19 0; diff --git a/scripts/regression_tests/binbuf_dollarzero.pd b/scripts/regression_tests/binbuf_dollarzero.pd new file mode 100644 index 0000000000000000000000000000000000000000..cce3d20d63db6da5bfde2c6715ed7b1428553916 --- /dev/null +++ b/scripts/regression_tests/binbuf_dollarzero.pd @@ -0,0 +1,9 @@ +#N canvas 335 192 582 396 10; +#X obj 31 21 inlet; +#X obj 31 121 outlet; +#X obj 31 49 == 0; +#X obj 31 81 list append dollarzero in a binbuf with no target should +expand to 0; +#X connect 0 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 1 0; diff --git a/scripts/regression_tests/msg_click.pd b/scripts/regression_tests/msg_click.pd new file mode 100644 index 0000000000000000000000000000000000000000..0a958585d82900cee8445c47652c3a05c0f4fd52 --- /dev/null +++ b/scripts/regression_tests/msg_click.pd @@ -0,0 +1,20 @@ +#N canvas 596 176 582 396 10; +#X obj 31 21 inlet; +#X msg 31 83 click 0 0 0 0 0; +#X msg 31 105 \$1; +#X obj 31 43 trigger bang bang; +#X obj 150 83 f 0; +#X msg 150 105 \$1; +#X obj 31 132 ==; +#X obj 31 161 list append clicking a msg box should send a single "0" +as an argument; +#X obj 31 196 outlet; +#X connect 0 0 3 0; +#X connect 1 0 2 0; +#X connect 2 0 6 0; +#X connect 3 0 1 0; +#X connect 3 1 4 0; +#X connect 4 0 5 0; +#X connect 5 0 6 1; +#X connect 6 0 7 0; +#X connect 7 0 8 0; diff --git a/scripts/regression_tests/msg_dollarzero.pd b/scripts/regression_tests/msg_dollarzero.pd new file mode 100644 index 0000000000000000000000000000000000000000..0170933326bd803a0c45c33d2454b628b2314360 --- /dev/null +++ b/scripts/regression_tests/msg_dollarzero.pd @@ -0,0 +1,16 @@ +#N canvas 341 250 582 396 10; +#X obj 31 21 inlet; +#X obj 31 46 t b b; +#X obj 31 77 f \$0; +#X msg 73 77 \$0; +#X obj 31 166 outlet; +#X obj 31 131 list append dollarzero should function the same in a +message box as it does in an object box; +#X obj 31 109 ==; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 1 1 3 0; +#X connect 2 0 6 0; +#X connect 3 0 6 1; +#X connect 5 0 4 0; +#X connect 6 0 5 0; diff --git a/scripts/regression_tests/msg_dollarzero_semi.pd b/scripts/regression_tests/msg_dollarzero_semi.pd new file mode 100644 index 0000000000000000000000000000000000000000..6f06c20de1bdf419775c8705543e8e1b7b87f148 --- /dev/null +++ b/scripts/regression_tests/msg_dollarzero_semi.pd @@ -0,0 +1,17 @@ +#N canvas 626 167 582 396 10; +#X obj 31 21 inlet; +#X obj 31 46 t b b; +#X obj 31 226 outlet; +#X obj 31 167 f 0; +#X obj 46 116 r \$0-dollsym; +#X msg 58 77 \; \$0-dollsym bang; +#X obj 46 138 f 1; +#X obj 31 191 list append dollarzero in symbol should expand properly +after semicolon; +#X connect 0 0 1 0; +#X connect 1 0 3 0; +#X connect 1 1 5 0; +#X connect 3 0 7 0; +#X connect 4 0 6 0; +#X connect 6 0 3 1; +#X connect 7 0 2 0; diff --git a/scripts/rtest.pd b/scripts/rtest.pd new file mode 100644 index 0000000000000000000000000000000000000000..1472f601283a998a3289e928960d0293bebba4a8 --- /dev/null +++ b/scripts/rtest.pd @@ -0,0 +1,22 @@ +#N canvas 120 270 353 357 12; +#X obj 36 60 inlet; +#X obj 36 85 t b b; +#X obj 36 296 outlet; +#X obj 68 267 send; +#X obj 93 152 loadbang; +#X msg 93 178 dollarzero; +#X obj 93 204 canvasinfo 1; +#X msg 93 229 symbol \$1-result; +#X obj 106 63 bng 20 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 68 124 regression_tests/\$1; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 1 1 9 0; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 7 0 3 1; +#X connect 8 0 9 0; +#X connect 9 0 3 0; +#X coords 0 -1 1 1 158 46 1 99 42;