package Ġorg . android aud iop l ugin . mid ide vices ervice Ċ Ċ import Ġandroidx . test . platform . app . Instrumentation Registry Ċ import Ġandroidx . test . ext . junit . runners . Android JUnit 4 Ċ import Ġorg . android aud iop l ugin . Plugin Information Ċ Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ Ċ import Ġorg . junit . Assert .* Ċ Ċ /** Ċ Ġ* ĠInstrument ed Ġtest , Ġwhich Ġwill Ġexecute Ġon Ġan ĠAndroid Ġdevice . Ċ Ġ* Ċ Ġ* ĠSee Ġ[ testing Ġdocumentation ]( http :// d . android . com / tools / testing ). Ċ Ġ*/ Ċ @ RunWith ( Android JUnit 4 :: class ) Ċ class ĠExample Instrument ed Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġuse AppContext () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠContext Ġof Ġthe Ġapp Ġunder Ġtest . ĊĠĠĠĠĠĠĠ Ġval Ġapp Context Ġ= ĠInstrument ation Registry . get Instrumentation (). target Context ĊĠĠĠĠĠĠĠ ĠassertEquals (" org . android aud iop l ugin . a ap _ midi _ device _ service ", Ġapp Context . packageName ) ĊĊĠĠĠĠĠĠĠ Ġapplication Context For Model Ġ= Ġapp Context ĊĠĠĠĠĠĠĠ Ġval Ġmodel Ġ= ĠApplication Model ( app Context . packageName , Ġapp Context ) ĊĊĠĠĠĠĠĠĠ Ġval Ġplugins Ġ= Ġorg . android aud iop l ugin . mid ide vices ervice . model . plugin Services . flatMap Ġ{ Ġs Ġ-> Ġs . plugins Ġ}. toList () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġp Ġ-> Ġp . category ?. contains (" Instrument ") Ġ?: Ġfalse Ġ|| Ġp . category ?. contains (" Syn th ") Ġ?: Ġfalse Ġ} ĊĊĠĠĠĠĠĠĠ Ġfor Ġ( plugin Ġin Ġplugins ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel . specified Instrument Ġ= Ġplugin ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel . initialize Midi () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel . play Note () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel . terminate Midi () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }