package Ġcom . k ung f ub on anza . quick verse Ċ Ċ import Ġkotlinx . coroutines . run Blocking Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . Assert .* Ċ Ċ /** Ċ Ġ* ĠTests Ġthe ĠE sv Api Ġcode . Ċ Ġ*/ Ċ class ĠE sv Api UnitTest Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠVerifies Ġparsing Ġof ĠGen esis Ġ 1 : 1 , Ġwhich Ġhas Ġno Ġprevious Ġchapter Ġor Ġver se , ĊĠĠĠĠ Ġ* Ġis Ġcorrect . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġfirst Ver se Parsing _ is Correct () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġthis Ġexample Ġwas Ġreturned Ġby Ġhttps :// api . es v . org / v 3 / pass age / text /? q = Gen + 1 : 1 ĊĠĠĠĠĠĠĠ Ġ// Ġon Ġ 0 4 ĠJul Ġ 2 0 1 9 ĊĠĠĠĠĠĠĠ Ġval Ġlast Ver se Json : ĠString Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" query ": Ġ" Gen Ġ 1 : 1 ", ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" canonical ": Ġ" Genesis Ġ 1 : 1 ", ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" parsed ": Ġ[[ 1 0 0 1 0 0 1 , Ġ 1 0 0 1 0 0 1 ]], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" pass age _ meta ": ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{" canonical ": Ġ" Genesis Ġ 1 : 1 ", ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" chapter _ start ": Ġ[ 1 0 0 1 0 0 1 , Ġ 1 0 0 1 0 3 1 ], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" chapter _ end ": Ġ[ 1 0 0 1 0 0 1 , Ġ 1 0 0 1 0 3 1 ], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" prev _ verse ": Ġnull , Ġ" next _ verse ": Ġ 1 0 0 1 0 0 2 , ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" prev _ chapter ": Ġnull , ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" next _ chapter ": Ġ[ 1 0 0 2 0 0 1 , Ġ 1 0 0 2 0 2 5 ]} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" pass ages ": ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Genesis Ġ 1 : 1 \ n \ n The ĠCreation Ġof Ġthe ĠWorld \ n \ n Ġ Ġ[ 1 ] ĠIn Ġthe Ġbeginning , ĠGod Ġcreated Ġthe Ġheav ens Ġand Ġthe Ġearth . Ġ( ES V )" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" ĊĊĠĠĠĠĠĠĠ ĠE sv Api (). parse JsonResponse ( last Ver se Json ). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" Gen Ġ 1 : 1 ", Ġit ?. query ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" Genesis Ġ 1 : 1 ", Ġit ?. canonical ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNull ( it !!. pass age _ meta [ 0 ]. prev _ verse ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNull ( it . pass age _ meta [ 0 ]. prev _ chapter ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠVerifies Ġparsing Ġof ĠRe vel ation Ġ 2 2 : 2 1 , Ġwhich Ġhas Ġno Ġnext Ġchapter Ġor Ġver se , ĊĠĠĠĠ Ġ* Ġis Ġcorrect . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġlast Ver se Parsing _ is Correct () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġthis Ġexample Ġwas Ġreturned Ġby Ġhttps :// api . es v . org / v 3 / pass age / text /? q = Rev + 2 2 : 2 1 ĊĠĠĠĠĠĠĠ Ġ// Ġon Ġ 0 4 ĠJul Ġ 2 0 1 9 ĊĠĠĠĠĠĠĠ Ġval Ġlast Ver se Json : ĠString Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" query ": Ġ" Rev Ġ 2 2 : 2 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" canonical ": Ġ" Re vel ation Ġ 2 2 : 2 1 ", ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" parsed ": Ġ[[ 6 6 0 2 2 0 2 1 , Ġ 6 6 0 2 2 0 2 1 ]], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" pass age _ meta ": ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{" canonical ": Ġ" Re vel ation Ġ 2 2 : 2 1 ", ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" chapter _ start ": Ġ[ 6 6 0 2 2 0 0 1 , Ġ 6 6 0 2 2 0 2 1 ], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" chapter _ end ": Ġ[ 6 6 0 2 2 0 0 1 , Ġ 6 6 0 2 2 0 2 1 ], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" prev _ verse ": Ġ 6 6 0 2 2 0 2 0 , ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" next _ verse ": Ġnull , ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" prev _ chapter ": Ġ[ 6 6 0 2 1 0 0 1 , Ġ 6 6 0 2 1 0 2 7 ], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" next _ chapter ": Ġnull } ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ], ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" pass ages ": Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Re vel ation Ġ 2 2 : 2 1 \ n \ n Ġ Ġ[ 2 1 ] ĠThe Ġgrace Ġof Ġthe ĠL ord ĠJes us Ġbe Ġwith Ġall .( 1 ) ĠA men .\ n \ n Foot notes \ n \ n ( 1 ) Ġ 2 2 : 2 1 ĠSome Ġman us cript s Ġ* all Ġthe Ġs aints *\ n Ġ( ES V )" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" ĊĊĠĠĠĠĠĠĠ ĠE sv Api (). parse JsonResponse ( last Ver se Json ). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" Rev Ġ 2 2 : 2 1 ", Ġit ?. query ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" Re vel ation Ġ 2 2 : 2 1 ", Ġit ?. canonical ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNull ( it !!. pass age _ meta [ 0 ]. next _ verse ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNull ( it . pass age _ meta [ 0 ]. next _ chapter ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠVerifies Ġthat Ġthe Ġstructure Ġbuilt Ġfrom Ġthe ĠJSON Ġreturned Ġby Ġthe ĠE SV ĠAPI ĊĠĠĠĠ Ġ* Ġis Ġcorrect Ġby Ġensuring Ġwe Ġcorrectly Ġparse Ġ[ the Ġexample ĠJSON ]( https :// api . es v . org / docs / pass age - text /) ĊĠĠĠĠ Ġ* Ġprovided Ġin Ġthe ĠE SV ĠAPI Ġdocumentation . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġjson Structure _ is Correct () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġthis Ġexample ĠJSON Ġis Ġfrom Ġhttps :// api . es v . org / docs / pass age - text / ĊĠĠĠĠĠĠĠ Ġval Ġexample Json : ĠString Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" query ": Ġ" John Ġ 1 1 : 3 5 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" canonical ": Ġ" John Ġ 1 1 : 3 5 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" parsed ": Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 1 0 3 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 1 0 3 5 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" pass age _ meta ": Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" canonical ": Ġ" John Ġ 1 1 : 3 5 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" chapter _ start ": Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 1 0 0 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 1 0 5 7 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" chapter _ end ": Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 1 0 0 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 1 0 5 7 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" prev _ verse ": Ġ 4 3 0 1 1 0 3 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" next _ verse ": Ġ 4 3 0 1 1 0 3 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" prev _ chapter ": Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 0 0 0 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 0 0 4 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" next _ chapter ": Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 2 0 0 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 3 0 1 2 0 5 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" pass ages ": Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" John Ġ 1 1 : 3 5 \ n \ n Ġ Ġ[ 3 5 ] ĠJes us Ġwe pt . Ġ( ES V )" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ""" ĊĊĠĠĠĠĠĠĠ ĠE sv Api (). parse JsonResponse ( example Json ). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġfor Ġnow Ġwe 'll Ġbe Ġfine Ġspot - checking Ġa Ġfew Ġfields ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" John Ġ 1 1 : 3 5 ", Ġit ?. query ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" John Ġ 1 1 : 3 5 ", Ġit ?. canonical ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( listOf ( 4 3 0 1 1 0 3 5 , Ġ 4 3 0 1 1 0 3 5 ), Ġit ?. parsed ?. get ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( listOf ( 4 3 0 1 0 0 0 1 , Ġ 4 3 0 1 0 0 4 2 ), Ġit ?. pass age _ meta ?. get ( 0 )?. prev _ chapter ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" John Ġ 1 1 : 3 5 \ n \ n Ġ Ġ[ 3 5 ] ĠJes us Ġwe pt . Ġ( ES V )", Ġit ?. pass ages ?. get ( 0 )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ