package Ġcom . g enu i . ret rofit 2 _ promise _ adapter Ċ Ċ import Ġcom . google . common . reflect . Type Token Ċ import Ġcom . google . common . truth . Truth . assertThat Ċ import Ġcom . shop ify . promises . Promise Ċ import Ġokhttp 3 . mock webserver . Mock WebServer Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Rule Ċ import Ġorg . junit . Test Ċ import Ġretrofit 2 . Ret rofit Ċ Ċ class ĠPromise Call Adapter Factory Test Ġ{ ĊĠĠĠ Ġprivate Ġval ĠNO _ AN NOT ATIONS Ġ= Ġempty Array < Annotation >() ĊĊĠĠĠ Ġ@ get : Rule ĊĠĠĠ Ġval Ġserver Ġ= ĠMock WebServer () ĊĊĠĠĠ Ġprivate Ġval Ġfactory Ġ= ĠPromise Call Adapter Factory () ĊĠĠĠ Ġprivate Ġvar Ġretrofit : ĠRet rofit ? Ġ= Ġnull ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġretrofit Ġ= ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( server . url ("/ ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( String Converter Factory ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Call Adapter Factory ( factory ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġresponse Type () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbody Class Ġ= Ġobject Ġ: ĠType Token < Promise < String , ĠException >>() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ}. type ĊĠĠĠĠĠĠĠ ĠassertThat ( factory . get ( body Class , ĠNO _ AN NOT ATIONS , Ġretrofit !! ) !!. response Type ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isEqualTo ( String :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġbody Wildcard Ġ= Ġobject Ġ: ĠType Token < Promise < out ĠString , ĠException >>() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ}. type ĊĠĠĠĠĠĠĠ ĠassertThat ( factory . get ( body Wildcard , ĠNO _ AN NOT ATIONS , Ġretrofit !! ) !!. response Type ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isEqualTo ( String :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġbody Generic Ġ= Ġobject Ġ: ĠType Token < Promise < List < String >, ĠException >>() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ}. type ĊĠĠĠĠĠĠĠ ĠassertThat ( factory . get ( body Generic , ĠNO _ AN NOT ATIONS , Ġretrofit !! ) !!. response Type ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isEqualTo ( object Ġ: ĠType Token < List < String >>() Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. type ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġnon List enable Future Returns Null () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġfactory . get ( String :: class . java , ĠNO _ AN NOT ATIONS , Ġretrofit !! ) ĊĠĠĠĠĠĠĠ ĠassertThat ( adapter ). isNull () ĊĠĠĠ Ġ} Ċ } Ċ