/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 ĠThe ĠAndroid ĠOpen ĠSource ĠProject Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġandroidx . build . test Configuration Ċ Ċ class ĠConfig Builder Ġ{ ĊĠĠĠ Ġvar Ġapp A pk Name : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġlateinit Ġvar Ġapplication Id : ĠString ĊĠĠĠ Ġvar Ġis Benchmark : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Post submit : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġlateinit Ġvar Ġmin Sdk : ĠString ĊĠĠĠ Ġvar Ġrun All Tests : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġval Ġtags : ĠMutable List < String > Ġ= Ġmutable ListOf () ĊĠĠĠ Ġlateinit Ġvar Ġtest A pk Name : ĠString ĊĠĠĠ Ġlateinit Ġvar Ġtest Runner : ĠString ĊĊĠĠĠ Ġfun Ġapp A pk Name ( app A pk Name : ĠString ) Ġ= Ġapply Ġ{ Ġthis . app A pk Name Ġ= Ġapp A pk Name Ġ} ĊĠĠĠ Ġfun Ġapplication Id ( application Id : ĠString ) Ġ= Ġapply Ġ{ Ġthis . application Id Ġ= Ġapplication Id Ġ} ĊĠĠĠ Ġfun Ġis Benchmark ( is Benchmark : ĠBoolean ) Ġ= Ġapply Ġ{ Ġthis . is Benchmark Ġ= Ġis Benchmark Ġ} ĊĠĠĠ Ġfun Ġis Post submit ( is Post submit : ĠBoolean ) Ġ= Ġapply Ġ{ Ġthis . is Post submit Ġ= Ġis Post submit Ġ} ĊĠĠĠ Ġfun Ġmin Sdk ( min Sdk : ĠString ) Ġ= Ġapply Ġ{ Ġthis . min Sdk Ġ= Ġmin Sdk Ġ} ĊĠĠĠ Ġfun Ġrun All Tests ( run All Tests : ĠBoolean ) Ġ= Ġapply Ġ{ Ġthis . run All Tests Ġ= Ġrun All Tests Ġ} ĊĠĠĠ Ġfun Ġtag ( tag : ĠString ) Ġ= Ġapply Ġ{ Ġthis . tags . add ( tag ) Ġ} ĊĠĠĠ Ġfun Ġtest A pk Name ( test A pk Name : ĠString ) Ġ= Ġapply Ġ{ Ġthis . test A pk Name Ġ= Ġtest A pk Name Ġ} ĊĠĠĠ Ġfun Ġtest Runner ( test Runner : ĠString ) Ġ= Ġapply Ġ{ Ġthis . test Runner Ġ= Ġtest Runner Ġ} ĊĊĠĠĠ Ġfun Ġbuild (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsb Ġ= ĠStringBuilder () ĊĠĠĠĠĠĠĠ Ġsb . append ( XML _ HEADER _ AND _ LICENSE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( CONFIGURATION _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( MIN _ API _ LEVEL _ CONTROLLER _ OBJECT . replace (" MIN _ SDK ", Ġmin Sdk )) ĊĠĠĠĠĠĠĠ Ġtags . forEach Ġ{ Ġtag Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( TEST _ SUITE _ TAG _ OPTION . replace (" TEST _ SUITE _ TAG ", Ġtag )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsb . append ( MODULE _ METADATA _ TAG _ OPTION . replace (" APPLICATION _ ID ", Ġapplication Id )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( WIFI _ DISABLE _ OPTION ) ĊĠĠĠĠĠĠĠ Ġif Ġ( is Benchmark ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( BENCH MARK _ POST SUBMIT _ OPTIONS ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( BENCH MARK _ PRE SUBMIT _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsb . append ( SETUP _ INCLUDE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TARGET _ PRE PAR ER _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( AP K _ INSTALL _ OPTION . replace (" AP K _ NAME ", Ġtest A pk Name )) ĊĠĠĠĠĠĠĠ Ġif Ġ(! app A pk Name . isNull OrEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( AP K _ INSTALL _ OPTION . replace (" AP K _ NAME ", Ġapp A pk Name !! )) ĊĠĠĠĠĠĠĠ Ġsb . append ( TARGET _ PRE PAR ER _ CLOSE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( RUN NER _ OPTION . replace (" TEST _ RUN NER ", Ġtest Runner )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( PACKAGE _ OPTION . replace (" APPLICATION _ ID ", Ġapplication Id )) ĊĠĠĠĠĠĠĠ Ġif Ġ( run All Tests ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( SMALL _ TEST _ OPTIONS ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( RUN NER _ OPTION . replace (" TEST _ RUN NER ", Ġtest Runner )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( PACKAGE _ OPTION . replace (" APPLICATION _ ID ", Ġapplication Id )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( MEDIUM _ TEST _ OPTIONS ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsb . append ( CONFIGURATION _ CLOSE ) ĊĠĠĠĠĠĠĠ Ġreturn Ġsb . toString () ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠMedia Config Builder Ġ{ ĊĠĠĠ Ġlateinit Ġvar Ġclient A pk Name : ĠString ĊĠĠĠ Ġlateinit Ġvar Ġclient Application Id : ĠString ĊĠĠĠ Ġvar Ġis Client Previous : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġvar Ġis Post submit : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġvar Ġis Service Previous : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġlateinit Ġvar Ġmin Sdk : ĠString ĊĠĠĠ Ġvar Ġrun All Tests : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġlateinit Ġvar Ġservice A pk Name : ĠString ĊĠĠĠ Ġlateinit Ġvar Ġservice Application Id : ĠString ĊĠĠĠ Ġvar Ġtags : ĠMutable List < String > Ġ= Ġmutable ListOf () ĊĠĠĠ Ġlateinit Ġvar Ġtest Runner : ĠString ĊĊĠĠĠ Ġfun Ġclient A pk Name ( client A pk Name : ĠString ) Ġ= Ġapply Ġ{ Ġthis . client A pk Name Ġ= Ġclient A pk Name Ġ} ĊĠĠĠ Ġfun Ġclient Application Id ( client Application Id : ĠString ) Ġ= ĊĠĠĠĠĠĠĠ Ġapply Ġ{ Ġthis . client Application Id Ġ= Ġclient Application Id Ġ} ĊĠĠĠ Ġfun Ġis Post submit ( is Post submit : ĠBoolean ) Ġ= Ġapply Ġ{ Ġthis . is Post submit Ġ= Ġis Post submit Ġ} ĊĠĠĠ Ġfun Ġis Client Previous ( is Client Previous : ĠBoolean ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . is Client Previous Ġ= Ġis Client Previous ĊĠĠĠ Ġ} ĊĠĠĠ Ġfun Ġis Service Previous ( is Service Previous : ĠBoolean ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . is Service Previous Ġ= Ġis Service Previous ĊĠĠĠ Ġ} ĊĠĠĠ Ġfun Ġmin Sdk ( min Sdk : ĠString ) Ġ= Ġapply Ġ{ Ġthis . min Sdk Ġ= Ġmin Sdk Ġ} ĊĠĠĠ Ġfun Ġrun All Tests ( run All Tests : ĠBoolean ) Ġ= Ġapply Ġ{ Ġthis . run All Tests Ġ= Ġrun All Tests Ġ} ĊĠĠĠ Ġfun Ġservice A pk Name ( service A pk Name : ĠString ) Ġ= Ġapply Ġ{ Ġthis . service A pk Name Ġ= Ġservice A pk Name Ġ} ĊĠĠĠ Ġfun Ġservice Application Id ( service Application Id : ĠString ) Ġ= ĊĠĠĠĠĠĠĠ Ġapply Ġ{ Ġthis . service Application Id Ġ= Ġservice Application Id Ġ} ĊĠĠĠ Ġfun Ġtag ( tag : ĠString ) Ġ= Ġapply Ġ{ Ġthis . tags . add ( tag ) Ġ} ĊĠĠĠ Ġfun Ġtest Runner ( test Runner : ĠString ) Ġ= Ġapply Ġ{ Ġthis . test Runner Ġ= Ġtest Runner Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmedia Instrumentation Args (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( is Client Previous ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( is Service Previous ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCLIENT _ PREVIOUS Ġ+ ĠSERVICE _ PREVIOUS ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCLIENT _ PREVIOUS Ġ+ ĠSERVICE _ TOT ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( is Service Previous ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCLIENT _ TOT Ġ+ ĠSERVICE _ PREVIOUS ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCLIENT _ TOT Ġ+ ĠSERVICE _ TOT ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbuild (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsb Ġ= ĠStringBuilder () ĊĠĠĠĠĠĠĠ Ġsb . append ( XML _ HEADER _ AND _ LICENSE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( CONFIGURATION _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( MIN _ API _ LEVEL _ CONTROLLER _ OBJECT . replace (" MIN _ SDK ", Ġmin Sdk )) ĊĠĠĠĠĠĠĠ Ġtags . forEach Ġ{ Ġtag Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( TEST _ SUITE _ TAG _ OPTION . replace (" TEST _ SUITE _ TAG ", Ġtag )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsb . append ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMODULE _ METADATA _ TAG _ OPTION . replace ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" APPLICATION _ ID ", Ġ"$ client Application Id ;$ service Application Id " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( WIFI _ DISABLE _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( SETUP _ INCLUDE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( MEDIA _ TARGET _ PRE PAR ER _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( AP K _ INSTALL _ OPTION . replace (" AP K _ NAME ", Ġclient A pk Name )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( AP K _ INSTALL _ OPTION . replace (" AP K _ NAME ", Ġservice A pk Name )) ĊĠĠĠĠĠĠĠ Ġsb . append ( TARGET _ PRE PAR ER _ CLOSE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( RUN NER _ OPTION . replace (" TEST _ RUN NER ", Ġtest Runner )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( PACKAGE _ OPTION . replace (" APPLICATION _ ID ", Ġclient Application Id )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( media Instrumentation Args ()) ĊĠĠĠĠĠĠĠ Ġif Ġ( run All Tests ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( RUN NER _ OPTION . replace (" TEST _ RUN NER ", Ġtest Runner )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( PACKAGE _ OPTION . replace (" APPLICATION _ ID ", Ġservice Application Id )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( media Instrumentation Args ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġadd Ġthe Ġsmall Ġand Ġmedium Ġtest Ġrun ners Ġfor Ġboth Ġclient Ġand Ġservice Ġapps ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( SMALL _ TEST _ OPTIONS ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( RUN NER _ OPTION . replace (" TEST _ RUN NER ", Ġtest Runner )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( PACKAGE _ OPTION . replace (" APPLICATION _ ID ", Ġclient Application Id )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( media Instrumentation Args ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( MEDIUM _ TEST _ OPTIONS ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( RUN NER _ OPTION . replace (" TEST _ RUN NER ", Ġtest Runner )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( PACKAGE _ OPTION . replace (" APPLICATION _ ID ", Ġservice Application Id )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( media Instrumentation Args ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( SMALL _ TEST _ OPTIONS ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( TEST _ BLOCK _ OPEN ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( RUN NER _ OPTION . replace (" TEST _ RUN NER ", Ġtest Runner )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( PACKAGE _ OPTION . replace (" APPLICATION _ ID ", Ġservice Application Id )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( media Instrumentation Args ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ( MEDIUM _ TEST _ OPTIONS ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Post submit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( FL AK Y _ TEST _ OPTION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . append ( TEST _ BLOCK _ CLOSE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsb . append ( CONFIGURATION _ CLOSE ) ĊĠĠĠĠĠĠĠ Ġreturn Ġsb . toString () ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠThese Ġconstants Ġare Ġthe Ġbuilding Ġblocks Ġof Ġthe Ġxml Ġconfigs , Ġbut Ċ Ġ* Ġthey Ġaren 't Ġvery Ġreadable Ġas Ġseparate Ġchunks . ĠLook Ġto Ċ Ġ* Ġthe Ġgold en Ġexamples Ġat Ġthe Ġbottom Ġof Ċ Ġ* Ġ{@ link Ġandroidx . build . test Configuration . Xml Test Config Verification Test } Ċ Ġ* Ġfor Ġexamples Ġof Ġwhat Ġthe Ġfull Ġxml Ġwill Ġlook Ġlike . Ċ Ġ*/ Ċ Ċ private Ġval ĠXML _ HEADER _ AND _ LICENSE Ġ= Ġ""" ĊĠĠĠ Ġ<? xml Ġversion =" 1 . 0 " Ġencoding =" utf - 8 "?> ĊĠĠĠ Ġ<!-- ĠCopyright Ġ( C ) Ġ 2 0 2 0 ĠThe ĠAndroid ĠOpen ĠSource ĠProject ĊĠĠĠ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License ") ĊĠĠĠ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . ĊĠĠĠ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat ĊĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 ĊĠĠĠ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware ĊĠĠĠ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , ĠWITHOUT ĊĠĠĠ ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . ĊĠĠĠ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions ĊĠĠĠ Ġand Ġlimitations Ġunder Ġthe ĠLicense . --> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠCONFIG URATION _ OPEN Ġ= Ġ""" ĊĠĠĠ Ġ< configuration Ġdescription =" Runs Ġtests Ġfor Ġthe Ġmodule "> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠCONFIG URATION _ CLOSE Ġ= Ġ""" ĊĠĠĠ Ġ</ configuration > Ċ """. trim Indent () Ċ Ċ private Ġval ĠMIN _ API _ LEVEL _ CONTROLLER _ OBJECT Ġ= Ġ""" ĊĠĠĠ Ġ< object Ġtype =" module _ controller " Ġclass =" com . android . tra def ed . test type . suite . module . Min Api Level Module Controller "> ĊĠĠĠ Ġ< option Ġname =" min - api - level " Ġvalue =" MIN _ SDK " Ġ/> ĊĠĠĠ Ġ</ object > Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠTEST _ SUITE _ TAG _ OPTION Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" test - suite - tag " Ġvalue =" TEST _ SUITE _ TAG " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠMODULE _ METADATA _ TAG _ OPTION Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" config - descriptor : metadata " Ġkey =" application Id " Ġvalue =" APPLICATION _ ID " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠW IFI _ DISABLE _ OPTION Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" wifi : disable " Ġvalue =" true " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠSET UP _ INCLUDE Ġ= Ġ""" ĊĠĠĠ Ġ< include Ġname =" google / un bund led / common / setup " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ /** Ċ Ġ* ĠWe Ġcan 't Ġremove Ġthe Ġapk Ġon ĠAPI Ġ< Ġ 2 7 Ġdue Ġto Ġa Ġplatform Ġcrash Ġthat Ġoccurs Ċ Ġ* Ġwhen Ġhandling Ġa ĠPACK AGE _ CHANGED Ġbroadcast Ġafter Ġthe Ġpackage Ġhas Ġbeen Ġremoved . Ġb / 3 7 2 6 4 3 3 4 Ċ Ġ*/ Ċ private Ġval ĠTARGET _ PRE PAR ER _ OPEN Ġ= Ġ""" ĊĠĠĠ Ġ< target _ pre par er Ġclass =" com . android . tra def ed . target prep . suite . Suite A pk Installer "> ĊĠĠĠ Ġ< option Ġname =" cleanup - ap ks " Ġvalue =" false " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠMED IA _ TARGET _ PRE PAR ER _ OPEN Ġ= Ġ""" ĊĠĠĠ Ġ< target _ pre par er Ġclass =" com . android . tra def ed . target prep . suite . Suite A pk Installer "> ĊĠĠĠ Ġ< option Ġname =" cleanup - ap ks " Ġvalue =" true " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠTARGET _ PRE PAR ER _ CLOSE Ġ= Ġ""" ĊĠĠĠ Ġ</ target _ pre par er > Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠA PK _ INSTALL _ OPTION Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" test - file - name " Ġvalue =" AP K _ NAME " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠTEST _ BLOCK _ OPEN Ġ= Ġ""" ĊĠĠĠ Ġ< test Ġclass =" com . android . tra def ed . test type . Android J UnitTest "> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠTEST _ BLOCK _ CLOSE Ġ= Ġ""" ĊĠĠĠ Ġ</ test > Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠRUN NER _ OPTION Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" runner " Ġvalue =" TEST _ RUN NER "/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠPACK AGE _ OPTION Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" package " Ġvalue =" APPLICATION _ ID " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠB EN CH MARK _ PRE SUBMIT _ OPTION Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" instrumentation - arg " Ġkey =" android x . benchmark . dry Run Mode . enable " Ġvalue =" true " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠB EN CH MARK _ POST SUBMIT _ OPTIONS Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" instrumentation - arg " Ġkey =" android x . benchmark . output . enable " Ġvalue =" true " Ġ/> ĊĠĠĠ Ġ< option Ġname =" instrumentation - arg " Ġkey =" listener " Ġvalue =" android x . benchmark . junit 4 . Instrumentation Results Run Listener " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠF LA KY _ TEST _ OPTION Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" instrumentation - arg " Ġkey =" not Annotation " Ġvalue =" android x . test . filters . Fl aky Test " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠSMALL _ TEST _ OPTIONS Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" size " Ġvalue =" small " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠMED IUM _ TEST _ OPTIONS Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" size " Ġvalue =" medium " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠCLIENT _ PREVIOUS Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" instrumentation - arg " Ġkey =" client _ version " Ġvalue =" previous " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠCLIENT _ TOT Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" instrumentation - arg " Ġkey =" client _ version " Ġvalue =" tot " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠSERVICE _ PREVIOUS Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" instrumentation - arg " Ġkey =" service _ version " Ġvalue =" previous " Ġ/> Ċ Ċ """. trim Indent () Ċ Ċ private Ġval ĠSERVICE _ TOT Ġ= Ġ""" ĊĠĠĠ Ġ< option Ġname =" instrumentation - arg " Ġkey =" service _ version " Ġvalue =" tot " Ġ/> Ċ Ċ """. trim Indent ()