package Ġorg . android aud iop l ugin . android aud iop l ugin . testing Ċ Ċ import Ġandroid . content . Context Ċ import Ġjunit . framework . Assert . assertEquals Ċ import Ġorg . android aud iop l ugin . Audio Plugin Host Ċ import Ġorg . android aud iop l ugin . Audio Plugin Host Helper Ċ import Ġorg . android aud iop l ugin . Plugin Information Ċ Ċ class ĠAudio Plugin Service Testing ( private Ġval Ġapplication Context : ĠContext ) Ġ{ ĊĊĠĠĠ Ġfun Ġget Plugin Service Info () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġaudio Plugin Service Info Ġ= ĠAudio Plugin Host Helper . getLocal Audio Plugin Service ( application Context ) ĊĠĠĠĠĠĠĠ ĠassertEquals Ġ(" packageName ", Ġapplication Context . packageName , Ġaudio Plugin Service Info . packageName ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbasic Service Operations ForAll Plugins () Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( plugin Info Ġin ĠAudio Plugin Host Helper . getLocal Audio Plugin Service ( application Context ). plugins ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtest Inst ancing And Processing ( plugin Info ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġtest Inst ancing And Processing ( plugin Info : ĠPlugin Information ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġhost Ġ= ĠAudio Plugin Host ( application Context ) ĊĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 .. 3 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġwe Ġshould Ġcome Ġup Ġwith Ġappropriate Ġlocks ... ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġpassed Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġhost . plugin Instanti ated Listeners . add Ġ{ Ġinstance Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpassed Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhost . instantiate Plugin ( plugin Info ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ(! passed ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠThread . sleep ( 1 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġfloat Count Ġ= Ġhost . audio BufferSize InBytes Ġ/ Ġ 4 Ġ// Ġ 4 Ġis Ġsizeof ( float ) ĊĠĠĠĠĠĠĠ Ġhost . inst anti ated Plugins . forEach Ġ{ Ġinstance Ġ-> Ġinstance . prepare ( float Count ) Ġ} ĊĠĠĠĠĠĠĠ Ġhost . inst anti ated Plugins . forEach Ġ{ Ġinstance Ġ-> Ġinstance . activate () Ġ} ĊĠĠĠĠĠĠĠ Ġhost . inst anti ated Plugins . forEach Ġ{ Ġinstance Ġ-> Ġinstance . process () Ġ} ĊĠĠĠĠĠĠĠ Ġhost . inst anti ated Plugins . forEach Ġ{ Ġinstance Ġ-> Ġinstance . deactivate () Ġ} ĊĠĠĠĠĠĠĠ Ġhost . inst anti ated Plugins . forEach Ġ{ Ġinstance Ġ-> Ġinstance . destroy () Ġ} ĊĊĠĠĠĠĠĠĠ Ġhost . dispose () ĊĠĠĠ Ġ} Ċ } Ċ