/* Ċ Ġ* ĠCopyright Ġ 2 0 2 2 ĠS as cha ĠPe il ic ke Ġ< sas cha @ pe il ic ke . de > Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġs as ch pe . k ase 6 4 Ċ Ċ import Ġkotlin . test . Test Ċ import Ġkotlin . test . assert Content Equals Ċ import Ġkotlin . test . assertEquals Ċ Ċ class ĠBase 6 4 Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun ĠbyteArray _ base 6 4 Decoded () Ġ{ ĊĠĠĠĠĠĠĠ ĠassertEquals (" Hello , Ġworld !", Ġ" SG V sb G 8 s IH dv cm xk IQ ==" . encode To ByteArray (). base 6 4 Decoded ) ĊĠĠĠĠĠĠĠ Ġassert Content Equals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbyte ArrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ- 9 4 , Ġ 1 2 4 , Ġ- 2 6 , Ġ- 1 1 2 , Ġ- 7 2 , Ġ- 8 4 , Ġ 1 6 , Ġ 1 1 , Ġ 6 7 , Ġ- 4 5 , Ġ 1 0 7 , Ġ 3 8 , Ġ- 9 9 , Ġ 7 9 , Ġ 6 2 , Ġ- 4 9 , Ġ 8 3 , Ġ 2 6 , Ġ- 8 5 , Ġ- 7 0 , Ġ- 1 2 2 , Ġ 5 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 6 7 , Ġ 4 2 , Ġ- 9 4 , Ġ- 8 7 , Ġ 6 1 , Ġ- 7 4 , Ġ 6 6 , Ġ 0 , Ġ 8 0 , Ġ- 1 2 5 , Ġ- 1 7 , Ġ- 1 1 , Ġ- 1 2 5 , Ġ 6 3 , Ġ 1 0 9 , Ġ- 1 5 , Ġ 5 6 , Ġ- 9 5 , Ġ- 3 3 , Ġ 1 8 , Ġ 1 1 0 , Ġ 4 7 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 7 , Ġ- 2 0 , Ġ- 7 2 , Ġ- 3 4 , Ġ 5 3 , Ġ- 6 9 , Ġ 4 9 , Ġ- 4 5 , Ġ 5 4 , Ġ 5 3 , Ġ- 2 1 , Ġ 4 3 , Ġ 9 , Ġ- 8 4 , Ġ- 1 2 5 , Ġ 7 2 , Ġ- 6 1 , Ġ 7 6 , Ġ 3 1 , Ġ- 4 6 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" on z mk L is E At D 0 2 sm n U 8 + z 1 Ma q 7 q G NUM qo qk 9 tk IA U IPv 9 YM / bf E 4 od 8 S bi 8 v 7 L je N bs x 0 zY 1 6 ys Jr IN Iw 0 wf 0 g ==" . base 6 4 Decoded Bytes ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun ĠbyteArray _ base 6 4 Encoded () Ġ{ ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" xv rp 9 DB W le i 2 m G 0 ov 9 MN + A ==", Ġ// Ġvalue 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbyte ArrayOf (- 5 8 , Ġ- 6 , Ġ- 2 3 , Ġ- 1 2 , Ġ 4 8 , Ġ 8 6 , Ġ- 1 0 7 , Ġ- 2 4 , Ġ- 7 4 , Ġ- 1 0 4 , Ġ 1 0 9 , Ġ 4 0 , Ġ- 6 5 , Ġ- 4 5 , Ġ 1 3 , Ġ- 8 ). base 6 4 Encoded ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ik Y J xF 8 n IQ D 9 RY 7 Y k 6 r 2 6 A ==", Ġ// Ġvalue 2 2 2 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbyte ArrayOf ( 3 4 , Ġ 7 0 , Ġ 9 , Ġ- 6 0 , Ġ 9 5 , Ġ 3 9 , Ġ 3 3 , Ġ 0 , Ġ- 3 , Ġ 6 9 , Ġ- 1 1 4 , Ġ- 4 0 , Ġ- 1 0 9 , Ġ- 8 6 , Ġ- 1 0 , Ġ- 2 4 ). base 6 4 Encoded ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" U 0 Ge VB i 2 d N cd L 2 IO 0 n Jo 5 Q ==", Ġ// Ġvalue 5 5 5 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbyte ArrayOf ( 8 3 , Ġ 6 5 , Ġ- 9 8 , Ġ 8 4 , Ġ 2 4 , Ġ- 7 4 , Ġ 1 1 6 , Ġ- 4 1 , Ġ 2 9 , Ġ 4 7 , Ġ 9 8 , Ġ 1 4 , Ġ- 4 6 , Ġ 1 1 4 , Ġ 1 0 4 , Ġ- 2 7 ). base 6 4 Encoded ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġstring _ base 6 4 Decoded () Ġ{ ĊĠĠĠĠĠĠĠ ĠassertEquals (" word ", Ġ" d 2 9 y ZA ==" . base 6 4 Decoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" Word ", Ġ" V 2 9 y ZA ==" . base 6 4 Decoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" Hello ", Ġ" SG V sb G 8 =". base 6 4 Decoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" World !", Ġ" V 2 9 yb GQ h ". base 6 4 Decoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" Hello , Ġworld !", Ġ" SG V sb G 8 s IH dv cm xk IQ ==" . base 6 4 Decoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEncoding . Standard . alphabet , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" QU JD REV GR 0 h JS kt MT U 5 PU FF SU 1 RV V ld YW V ph Ym Nk ZW Z na Gl qa 2 xt bm 9 wc XJ zd HV 2 d 3 h 5 ej Ax Mj M 0 N TY 3 OD kr Lw ==" . base 6 4 Decoded ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" abcd ", Ġ" YW Jj ZA ==" . base 6 4 Decoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 2 3 4 5 6 7 8 9 0 -= ! @ # \$ %^ & * () _ + qw erty ui op []; ' \\ , ./ ? >< | \": }{ P ` ~ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" M TI z ND U 2 Nz g 5 MC 0 9 I UA j JC Ve Ji oo KV 8 rc X dl cn R 5 d Wl vc F td Oy dc LC 4 v Pz 4 8 f CI 6 f Xt QY H 4 =". base 6 4 Decoded ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" sas ch pe ", Ġ" c 2 Fz Y 2 hw ZQ ==" . base 6 4 Decoded ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġstring _ base 6 4 Encoded () Ġ{ ĊĠĠĠĠĠĠĠ ĠassertEquals (" d 2 9 y ZA ==", Ġ" word ". base 6 4 Encoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" V 2 9 y ZA ==", Ġ" Word ". base 6 4 Encoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" SG V sb G 8 =", Ġ" Hello ". base 6 4 Encoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" V 2 9 yb GQ h ", Ġ" World ! ". base 6 4 Encoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" SG V sb G 8 s IH dv cm xk IQ ==", Ġ" Hello , Ġworld ! ". base 6 4 Encoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" SG V sb G 8 s IH dv cm xk IQ ==", Ġ" Hello , Ġworld ! ". encode To ByteArray (). base 6 4 Encoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" QU JD REV GR 0 h JS kt MT U 5 PU FF SU 1 RV V ld YW V ph Ym Nk ZW Z na Gl qa 2 xt bm 9 wc XJ zd HV 2 d 3 h 5 ej Ax Mj M 0 N TY 3 OD kr Lw ==", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEncoding . Standard . alphabet . base 6 4 Encoded ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" YW Jj ZA ==", Ġ" abcd ". base 6 4 Encoded ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" M TI z ND U 2 Nz g 5 MC 0 9 I UA j JC Ve Ji oo KV 8 rc X dl cn R 5 d Wl vc F td Oy dc LC 4 v Pz 4 8 f CI 6 f Xt QY H 4 =", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 2 3 4 5 6 7 8 9 0 -= ! @ # \$ %^ & * () _ + qw erty ui op []; ' \\ , ./ ? >< | \": }{ P ` ~ ". base 6 4 Encoded ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" c 2 Fz Y 2 hw ZQ ==", Ġ" sas ch pe ". base 6 4 Encoded ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġstring _ round Trip () Ġ= ĊĠĠĠĠĠĠĠ ĠassertEquals ( Encoding . Standard . alphabet , ĠEncoding . Standard . alphabet . base 6 4 Encoded . base 6 4 Decoded ) Ċ } Ċ