package Ġru . po cket byte . lo col aser . mobile . resource Ċ Ċ import Ġorg . junit . Rule Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . rules . Temporary Folder Ċ import Ġru . po cket byte . lo col aser . mobile . utils . Template Str Ċ import Ġru . po cket byte . lo col aser . resource . Resources Ċ import Ġru . po cket byte . lo col aser . resource . entity .* Ċ Ċ import Ġjava . io . File Ċ import Ġjava . io . IOException Ċ import Ġjava . nio . charset . Charset Ċ import Ġjava . nio . file . Files Ċ import Ġjava . nio . file . Paths Ċ Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Assert . assertTrue Ċ Ċ class ĠI os Swift Resources Test Ġ{ ĊĊĠĠĠ Ġ@ Rule Ġ@ Jvm Field ĊĠĠĠ Ġvar Ġtemp Folder Ġ= ĠTemporary Folder () ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Throws ( IOException :: class ) ĊĠĠĠ Ġfun Ġtest Write Swift File () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġres Map Ġ= ĠRes Map () ĊĠĠĠĠĠĠĠ Ġval Ġres Locale Ġ= ĠRes Locale () ĊĠĠĠĠĠĠĠ Ġres Locale . put ( prepare Res Item (" key 3 ", ĠarrayOf ( Res Value (" value 1 _ 2 ", Ġnull , ĠQuantity . OTHER )))) ĊĠĠĠĠĠĠĠ Ġres Map [ Resources . BASE _ LOCAL E ] Ġ= Ġres Locale ĊĊĠĠĠĠĠĠĠ Ġval ĠclassName Ġ= Ġ" Strings " ĊĠĠĠĠĠĠĠ Ġval ĠtableName Ġ= Ġ" som Table " ĊĠĠĠĠĠĠĠ Ġval Ġsource Dir Ġ= Ġtemp Folder . new Folder () ĊĊĠĠĠĠĠĠĠ ĠI os Swift Resources ( source Dir , ĠclassName , ĠtableName , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. write ( res Map , Ġnull ) ĊĊĠĠĠĠĠĠĠ Ġval Ġswift File Ġ= ĠFile ( source Dir , ĠclassName Ġ+ ĠI os Swift Resources . SW IFT _ FILE _ EXTENSION ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( swift File . exists ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Result Ġ= ĠTemplate Str . GENERATED _ CLASS _ COMMENT Ġ+ Ġ"\ r \ n \ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" import ĠFoundation \ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"\ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" public Ġclass ĠStrings Ġ{\ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"\ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ/// Ġvalue 1 _ 2 \ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġpublic Ġstatic Ġvar Ġkey 3 Ġ: ĠString Ġ{\ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġget Ġ{\ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠNS Localized String (\" key 3 \", ĠtableName :\" som Table \", Ġbundle : Bundle . main ," Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġvalue :\" value 1 _ 2 \", Ġcomment : Ġ\" \") \ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ}\ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"\ r \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( expected Result , ĠreadFile ( swift File )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġprepare Res Item ( key : ĠString , Ġvalues : ĠArray < Res Value >): ĠRes Item Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġres Item Ġ= ĠRes Item ( key ) ĊĠĠĠĠĠĠĠ Ġfor Ġ( value Ġin Ġvalues ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġres Item . add Value ( value ) ĊĠĠĠĠĠĠĠ Ġreturn Ġres Item ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Throws ( IOException :: class ) ĊĠĠĠ Ġprivate Ġfun ĠreadFile ( file : ĠFile ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠString ( Files . read All Bytes ( Paths . get ( file . absolute Path )), ĠCharset . default Charset ()) ĊĠĠĠ Ġ} Ċ } Ċ