package Ġmy cord a . app . file Bundle . adapter Ċ Ċ import Ġcom . nat pr y ce . ham k rest . assertion . assertThat Ċ import Ġcom . nat pr y ce . ham k rest . equalTo Ċ import Ġmy cord a . app . file Bundle . File Bundle Ċ import Ġmy cord a . app . file Bundle . Fixtures Ċ import Ġmy cord a . app . file Bundle . adapters . File Bundle Adapter Ċ import Ġmy cord a . app . types . UniqueId Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ abstract Ġclass ĠBase Adapter Test < T > Ġ{ ĊĠĠĠ Ġenum Ġclass ĠData Mode Ġ{ Ġexpected , Ġactual Ġ} ĠĠ Ġ// ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġload Adapt ed ( path : ĠString ): ĠT ĊĠĠĠ Ġprotected Ġabstract Ġfun Ġstore Adapt ed ( path : ĠString , Ġadapted : ĠT ) ĊĠĠĠ Ġprotected Ġabstract Ġfun Ġcreate Adapter ( mode : ĠData Mode ): ĠFile Bundle Adapter < T > ĊĊĠĠĠ Ġprotected Ġfun Ġassert Bundle ( actual : ĠFile Bundle , Ġexpected : ĠFile Bundle ) Ġ{ ĊĠĠĠĠĠĠĠ ĠassertThat ( actual , ĠequalTo ( expected )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġassert Adapt ed ( actual : ĠT , Ġexpected : ĠT ) ĊĊĠĠĠ Ġprotected Ġabstract Ġval Ġsingle Text File : ĠT ĊĊĠĠĠ Ġprotected Ġabstract Ġval Ġmix Of Line Termination : ĠT ĊĊĠĠĠ Ġprotected Ġabstract Ġval Ġsingle Binary File : ĠT ĊĊĠĠĠ Ġprotected Ġabstract Ġval Ġexample Files : ĠT ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġconvert Ġsingle Ġtext Ġfile Ġbundle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . actual ) ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠUnique Id . fromString (" 1 2 3 4 5 6 ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġadapter . from Bundle ( Fixtures . hello World Bundle ( id )) ĊĠĠĠĠĠĠĠ Ġ// Ġuncomment Ġto Ġsave Ġnew Ġtest Ġdate ĊĠĠĠĠĠĠĠ Ġ// store Adapt ed (" single Text File . txt ", Ġresult Ġas ĠT ) ĊĠĠĠĠĠĠĠ Ġassert Adapt ed ( result , Ġsingle Text File ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġun - convert Ġsingle Ġtext Ġfile Ġbundle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . expected ) ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠUnique Id . fromString (" 1 2 3 4 5 6 ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġadapter . to Bundle ( single Text File ) ĊĠĠĠĠĠĠĠ Ġassert Bundle ( result , ĠFix tures . hello World Bundle ( id )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġconvert Ġmixed Ġline Ġtermin ations Ġbundle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . actual ) ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠUnique Id . fromString (" 1 2 3 4 5 6 ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġadapter . from Bundle ( Fixtures . mix Of Line Termination Bundle ( id )) ĊĠĠĠĠĠĠĠ Ġ// Ġuncomment Ġto Ġsave Ġnew Ġtest Ġdate ĊĠĠĠĠĠĠĠ Ġ// store Adapt ed (" mix Of Line Termination . txt ", Ġresult ) ĊĠĠĠĠĠĠĠ Ġassert Adapt ed ( result , Ġmix Of Line Termination ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġun - convert Ġmixed Ġline Ġtermin ations Ġbundle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . expected ) ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠUnique Id . fromString (" 1 2 3 4 5 6 ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġadapter . to Bundle ( mix Of Line Termination ) ĊĠĠĠĠĠĠĠ Ġassert Bundle ( result , ĠFix tures . mix Of Line Termination Bundle ( id )) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġconvert Ġsingle Ġbinary Ġfile Ġbundle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . actual ) ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠUnique Id . fromString (" abcdef ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġadapter . from Bundle ( Fixtures . binary Bundle ( id )) ĊĠĠĠĠĠĠĠ Ġ// Ġuncomment Ġto Ġsave Ġnew Ġtest Ġdate ĊĠĠĠĠĠĠĠ Ġ// Ġstore Adapt ed (" single Binary File . txt ", Ġresult ) ĊĠĠĠĠĠĠĠ Ġassert Adapt ed ( result , Ġsingle Binary File ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġun - convert Ġsingle Ġbinary Ġfile Ġbundle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . expected ) ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠUnique Id . fromString (" abcdef ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġadapter . to Bundle ( single Binary File ) ĊĠĠĠĠĠĠĠ Ġassert Bundle ( result , ĠFix tures . binary Bundle ( id )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġconvert Ġmulti Ġfile Ġbundle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . actual ) ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠUnique Id . fromString (" abcdef ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġadapter . from Bundle ( Fixtures . all Example Files ( id )) ĊĠĠĠĠĠĠĠ Ġ// Ġuncomment Ġto Ġsave Ġnew Ġtest Ġdate ĊĠĠĠĠĠĠĠ Ġ// store Adapt ed (" example Files ", Ġresult ) ĊĠĠĠĠĠĠĠ Ġassert Adapt ed ( result , Ġexample Files ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġun - convert Ġmulti Ġfile Ġbundle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . expected ) ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠUnique Id . fromString (" abcdef ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġadapter . to Bundle ( example Files ) ĊĠĠĠĠĠĠĠ Ġassert Bundle ( result , ĠFix tures . all Example Files ( id )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġround Ġtrip `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġcreate Adapter ( Data Mode . actual ) ĊĠĠĠĠĠĠĠ Ġval Ġoriginal s Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFix tures . hello World Bundle (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFix tures . binary Bundle (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFix tures . all Example Files (), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġoriginal s . forEach Ġ{ Ġoriginal Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . to Bundle ( adapter . from Bundle ( original )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertThat ( result , ĠequalTo ( original )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ Ċ }