4

AudioKit seems very tightly coupled with hardware that it's being run on. For example, simple let mic = AKMicrophone() run on simulator can crash if you plug in headphones to your computer.

Is there any way to configure the AudioKit in a way to isolate it from hardware? Right now it seems impossible to me to reliably unit test any code that touches AudioKit. Let alone doing it on the cloud CI.

Am I missing something?

1 Answers1

2

Actually AudioKit itself is tested using TravisCI.

https://audiokit.io/tests/

Basically, we render the audio offline to a buffer and check the MD5 of the result to a known value.

Instead of using the AKMicrophone, which you can't rely on for tests, send generator output (we use a basic sine wave) into the processing nodes.

Aurelius Prochazka
  • 4,510
  • 2
  • 11
  • 34