package Ġru . alex and rk ut ash ov . on etime secret . data . repository . model Ċ Ċ import Ġcom . squareup . mos hi . Kotlin Json Adapter Factory Ċ import Ġcom . squareup . mos hi . M oshi Ċ import Ġorg . hamcrest . Core Matchers .` is ` Ċ import Ġorg . hamcrest . Matcher Assert . assertThat Ċ import Ġorg . junit . Test Ċ Ċ /** Ċ Ġ* ĠTest Ġfor Ġ[ Metadata Response ] Ċ Ġ* Ċ Ġ* Ġ@ author ĠAlex and r ĠK ut ash ov Ċ Ġ* ĠĠĠĠĠĠĠĠ Ġon Ġ 2 3 . 0 2 . 2 0 1 8 Ċ Ġ*/ Ċ Ċ class ĠMetadata Response Json Serialize Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġjson Ġ= Ġ""" {" cust id ":" anon "," metadata _ key ":" some Meta "," secret _ key ":" some Key "," ttl ": 6 6 6 ," metadata _ ttl ": 6 6 0 ," secret _ ttl ": 3 2 7 ," state ":" view ed "," updated ": 4 2 1 ," created ": 3 2 1 4 ," recipient ":[ ]," pass phrase _ required ": true } """ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġserialize () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠM oshi . Builder (). add ( Kotlin Json Adapter Factory ()). build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. adapter ( Metadata Response :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. toJson ( Metadata Response ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcust Id Ġ= Ġ" anon ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmetadata Key Ġ= Ġ" some Meta ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsecret Key Ġ= Ġ" some Key ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġttl Ġ= Ġ 6 6 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmetadata T tl Ġ= Ġ 6 6 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsecret T tl Ġ= Ġ 3 2 7 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġ= Ġ" view ed ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdate Created Ġ= Ġ 3 2 1 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdate Updated Ġ= Ġ 4 2 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrecipient Ġ= Ġempty List (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Pass phrase Required Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġjson ĊĊĠĠĠĠĠĠĠ ĠassertThat ( actual , Ġ` is `( expected )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġdeserialize () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠM oshi . Builder (). add ( Kotlin Json Adapter Factory ()). build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. adapter ( Metadata Response :: class . java ). fromJson ( json ) ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= ĠMetadata Response ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcust Id Ġ= Ġ" anon ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmetadata Key Ġ= Ġ" some Meta ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsecret Key Ġ= Ġ" some Key ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġttl Ġ= Ġ 6 6 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmetadata T tl Ġ= Ġ 6 6 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsecret T tl Ġ= Ġ 3 2 7 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdate Created Ġ= Ġ 3 2 1 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdate Updated Ġ= Ġ 4 2 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrecipient Ġ= Ġempty List (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Pass phrase Required Ġ= Ġtrue , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġ= Ġ" view ed " ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( actual , Ġ` is `( expected )) ĊĠĠĠ Ġ} Ċ }