aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAldrin Martoq <amartoq@dcc.uchile.cl>2008-02-22 17:49:01 +0100
committerTakashi Iwai <tiwai@suse.de>2008-02-22 17:49:01 +0100
commit83c5a607780d7a04d6e0127d0498c7c391a48617 (patch)
tree3699bcec58adbffeb3a8ec51fab3f780ad49d98c /test
parent75ecdac6f49cc9e092e002926f280c5979acc234 (diff)
add a test code for snd_seq_client_info_event_filter_*()
Added test code for snd_seq_client_info_event_filter_{clear,add,del,check} Signed-off-by: Aldrin Martoq <amartoq@dcc.uchile.cl>
Diffstat (limited to 'test')
-rw-r--r--test/Makefile.am3
-rw-r--r--test/client_event_filter.c46
2 files changed, 48 insertions, 1 deletions
diff --git a/test/Makefile.am b/test/Makefile.am
index b460ba4b..2d7e92b0 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1,6 +1,6 @@
check_PROGRAMS=control pcm pcm_min latency seq \
playmidi1 timer rawmidi midiloop \
- oldapi queue_timer namehint
+ oldapi queue_timer namehint client_event_filter
control_LDADD=../src/libasound.la
pcm_LDADD=../src/libasound.la
@@ -14,6 +14,7 @@ midiloop_LDADD=../src/libasound.la
oldapi_LDADD=../src/libasound.la
queue_timer_LDADD=../src/libasound.la
namehint_LDADD=../src/libasound.la
+client_event_filter_LDADD=../src/libasound.la
code_CFLAGS=-Wall -pipe -g -O2
INCLUDES=-I$(top_srcdir)/include
diff --git a/test/client_event_filter.c b/test/client_event_filter.c
new file mode 100644
index 00000000..06503141
--- /dev/null
+++ b/test/client_event_filter.c
@@ -0,0 +1,46 @@
+#include <alsa/asoundlib.h>
+
+void dump_event_filter(snd_seq_client_info_t *client_info) {
+ int i, b;
+
+ for (i = 0; i <= 255;) {
+ b = snd_seq_client_info_event_filter_check(client_info, i);
+ i++;
+ printf("%c%s%s", (b ? 'X' : '.'),
+ (i % 8 == 0 ? " " : ""),
+ (i % 32 == 0 ? "\n" : ""));
+ }
+ printf("\n");
+}
+
+int main(void) {
+ snd_seq_client_info_t *client_info;
+
+ snd_seq_client_info_alloca(&client_info);
+
+ printf("first client_info_event_filter :\n");
+ dump_event_filter(client_info);
+
+ snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);
+ printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);\n");
+ dump_event_filter(client_info);
+
+ snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_PGMCHANGE);
+ printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_PGMCHANGE);\n");
+ dump_event_filter(client_info);
+
+ snd_seq_client_info_event_filter_del(client_info, SND_SEQ_EVENT_NOTEON);
+ printf("after snd_seq_client_info_event_filter_del(client_info, SND_SEQ_EVENT_NOTEON);\n");
+ dump_event_filter(client_info);
+
+ snd_seq_client_info_event_filter_clear(client_info);
+ printf("after snd_seq_client_info_event_filter_clear(client_info);\n");
+ dump_event_filter(client_info);
+
+ snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);
+ printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);\n");
+ dump_event_filter(client_info);
+
+ return 0;
+}
+