#!/bin/sh

set -e

if [ -x /sbin/modprobe ]; then
  /sbin/modprobe snd-virmidi 2>&1 || true
fi

if [ ! -e /dev/snd/seq ]; then
  exit 77
fi

o2m -l

SEQ_LOG=$AUTOPKGTEST_ARTIFACTS/seq.log
aseqdump -p Midi 2>&1 | tee $SEQ_LOG &

o2m &

for i in 1 2 3; do
  printf '/*/note_on\0\0,iii\0\0\0\0\0\0\0\4\0\0\0\23\0\0\0\177' \
    | nc -w 1 -u localhost 57200
  sleep 1
  printf '/*/note_off\0,iii\0\0\0\0\0\0\0\4\0\0\0\23\0\0\0\177' \
    | nc -w 1 -u localhost 57200
done

if ! grep -q Note $SEQ_LOG; then
  exit 1
fi
