/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 8 - 2 0 2 1 . Ġdata 2 viz Ġs Ãł rl . Ċ Ġ* Ċ Ġ* Ġ Ġ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 . Ċ Ġ* Ċ Ġ*/ Ċ Ċ @ file : Suppress (" FunctionName ", Ġ" unused ") Ċ Ċ package Ġio . data 2 viz . format Ċ Ċ import Ġio . data 2 viz . test . TestBase Ċ import Ġkotlin . math . PI Ċ import Ġkotlin . test . Ignore Ċ import Ġkotlin . test . Test Ċ Ċ class ĠFormat Type Percent Tests Ġ: ĠTest Base () Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġformat _ percent _ can _ output _ a _ whole _ percentage () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġf Ġ= Ġformatter (". 0 % ") ĊĠĠĠĠĠĠĠ Ġf ( 0 . 0 ) ĠshouldBe Ġ" 0 %" ĊĠĠĠĠĠĠĠ Ġf (. 0 4 2 ) ĠshouldBe Ġ" 4 %" ĊĠĠĠĠĠĠĠ Ġf (. 4 2 ) ĠshouldBe Ġ" 4 2 %" ĊĠĠĠĠĠĠĠ Ġf ( 4 . 2 ) ĠshouldBe Ġ" 4 2 0 %" ĊĠĠĠĠĠĠĠ Ġf (- . 0 4 2 ) ĠshouldBe Ġ"- 4 %" ĊĠĠĠĠĠĠĠ Ġf (- . 4 2 ) ĠshouldBe Ġ"- 4 2 %" ĊĠĠĠĠĠĠĠ Ġf (- 4 . 2 ) ĠshouldBe Ġ"- 4 2 0 %" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġformat _ percent _ can _ output _ a _ percentage _ with _ exponent () Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġf Ġ= Ġformatter (". 1 % ") ĊĠĠĠĠĠĠĠ Ġf (. 2 3 4 ) ĠshouldBe Ġ" 2 3 . 4 %" ĊĠĠĠĠĠĠĠ Ġf Ġ= Ġformatter (". 2 % ") ĊĠĠĠĠĠĠĠ Ġf (. 2 3 4 ) ĠshouldBe Ġ" 2 3 . 4 0 %" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġformat _ percent _ fill _ res pect s _ suffix Ġ() Ġ{ ĊĠĠĠĠĠĠĠ Ġformatter (" 0 2 0 . 0 % ")( 4 2 . 0 ) ĠshouldBe Ġ" 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 2 0 0 %" ĊĠĠĠĠĠĠĠ Ġformatter (" 2 0 . 0 % ")( 4 2 . 0 ) ĠshouldBe Ġ" ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 2 0 0 %" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠĠĠĠĠ Ġ- 4 2 , 2 0 0 % ĠĠĠĠĠĠ Ġdid Ġnot Ġequal ĠĠĠĠĠĠ Ġ- 4 2 , 2 0 0 % ĊĠĠĠ Ġ// ĠĠĠĠĠĠĠĠĠ 4 2 % ĠĠĠĠĠĠĠĠĠĠ Ġdid Ġnot Ġequal ĠĠĠĠĠĠĠĠĠĠ 4 2 % ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġformat _ percent _ align _ center _ puts _ suffix _ adjacent _ to _ number () Ġ{ ĊĠĠĠĠĠĠĠ Ġformatter ("^ 2 1 . 0 % ") (. 4 2 ) ĠshouldBe Ġ" ĠĠĠĠĠĠĠĠĠ 4 2 % ĠĠĠĠĠĠĠĠ Ġ" ĊĠĠĠĠĠĠĠ Ġformatter ("^ 2 1 ,. 0 % ")( 4 2 2 . 0 ) ĠshouldBe Ġ" ĠĠĠĠĠĠĠ 4 2 , 2 0 0 % ĠĠĠĠĠĠ Ġ" ĊĠĠĠĠĠĠĠ Ġformatter ("^ 2 1 ,. 0 % ") (- 4 2 2 . 0 ) ĠshouldBe Ġ" ĠĠĠĠĠ Ġ- 4 2 , 2 0 0 % ĠĠĠĠĠĠ Ġ" Ċ // ĠĠĠĠĠĠĠ ĠLocale () ĊĠĠĠ Ġ} ĊĊĊĊ Ġ} Ċ