package Ġcom . zj . architecture . mock api Ċ Ċ import Ġcom . zj . architecture . Build Config Ċ import Ġokhttp 3 .* Ċ Ċ class ĠMock Interceptor Ġ: ĠInter ceptor Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġintercept ( chain : ĠInter ceptor . Chain ): ĠResponse Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( Build Config . DEBUG ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġuri Ġ= Ġchain . request (). url (). uri (). toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresponse String Ġ= Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġuri . endsWith (" mock ") Ġ-> Ġget Mock ApiResponse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠResponse . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. request ( chain . request ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. code ( 2 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. protocol ( Protocol . HTTP _ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. message ( response String ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. body ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Body . create ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMediaType . parse (" application / json "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse String . toByteArray () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" content - type ", Ġ" application / json ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// just Ġto Ġbe Ġon Ġsafe Ġside . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIllegal Access Error (""" Mock Interceptor Ġis Ġonly Ġmeant Ġfor ĠTesting ĠPur poses Ġand Ġbound Ġto Ġbe Ġused Ġonly Ġwith ĠDEBUG Ġmode """) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ const Ġval Ġget Mock ApiResponse Ġ= Ġ""" Ċ { ĊĠ Ġ" articles ": Ġ[ ĊĠĠĠ Ġ{ ĊĠĠĠĠĠ Ġ" title ": Ġ" Title ", ĊĠĠĠĠĠ Ġ" description ": Ġ" Description ", ĊĠĠĠĠĠ Ġ" imageUrl ": Ġ" imageUrl " ĊĠĠĠ Ġ}, ĊĠĠĠ Ġ{ ĊĠĠĠĠĠ Ġ" title ": Ġ" Title ", ĊĠĠĠĠĠ Ġ" description ": Ġ" Description ", ĊĠĠĠĠĠ Ġ" imageUrl ": Ġ" imageUrl " ĊĠĠĠ Ġ} ĊĠ Ġ] Ċ } """