This manual test suite verifies that Web MIDI MidiAccess objects are only allowed to send and receive messages permitted by the access level they are constructed with, independent of the site permssion allowed.


Step 1: Create a MIDI access object with or without SysEx access. This may require accepting a permission prompt.

Waiting for selection...

Step 2: Send each type of MIDI message and check the results. This will send messages to all connected MIDI devices and ports. There should be at least one loopback input and output, such that the output will send to the input. This may need to be set up in a system-dependent way before running the tests.


Step 3: Repeat Step 1 and Step 2 with the other type of MIDI access object.


Results for each test are listed below. If the status is "Waiting..." the test condiditions haven't been checked yet. If the status is "Pass" the test has passed. If the status is "FAIL" the test has failed.

MIDI sysexEnabled set to false Waiting...
MIDI send MIDI allowed Waiting...
MIDI receive MIDI allowed Waiting...
MIDI send SysEx blocked with error Waiting...
MIDI receive SysEx blocked silently Waiting... (NOTE: this test cannot detect the Pass state)
SysEx sysexEnabled set to true Waiting...
SysEx send MIDI allowed Waiting...
SysEx receive MIDI allowed Waiting...
SysEx send SysEx allowed Waiting...
SysEx receive SysEx allowed Waiting...