package Ġfont Ċ Ċ import Ġdev . j unk er . fig by . font . Fig Font Ċ import Ġdev . j unk er . fig by . layout . Horizontal Layout Mode Ċ import Ġdev . j unk er . fig by . layout . Horizontal Sm ush ing Rule Ċ import Ġdev . j unk er . fig by . layout . Print Direction Ċ import Ġhelpers . fake Fig Font File Ċ import Ġio . kot est . assertions . throw ables . should Throw Ċ import Ġio . kot est . core . spec . style . Should Spec Ċ import Ġio . kot est . matchers . collections . shouldBe Empty Ċ import Ġio . kot est . matchers . collections . should Contain Ċ import Ġio . kot est . matchers . shouldBe Ċ Ċ class ĠParse Fig Font Tests Ġ: ĠShould Spec ({ ĊĠĠĠ Ġshould (" return Ġfont Ġwhen Ġgiven Ġall Ġvalid Ġparameters ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 5 Ġ 4 Ġ 3 Ġ- 1 Ġ 1 Ġ 0 Ġ 2 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 5 ) ĊĠĠĠĠĠĠĠ Ġval Ġfont Ġ= ĠFig Font . from File ( font File ) ĊĊĠĠĠĠĠĠĠ Ġfont . height ĠshouldBe Ġ 5 ĊĠĠĠĠĠĠĠ Ġfont . baseline ĠshouldBe Ġ 4 ĊĠĠĠĠĠĠĠ Ġfont . maxLength ĠshouldBe Ġ 3 ĊĠĠĠĠĠĠĠ Ġfont . horizontalLayout ĠshouldBe ĠHorizontal Layout Mode . Full Width ĊĠĠĠĠĠĠĠ Ġfont . print Direction ĠshouldBe ĠPrint Direction . Left To Right ĊĠĠĠĠĠĠĠ Ġfont . horizontal Sm ush ing Rules Ġshould Contain ĠHorizontal Sm ush ing Rule . Un ders core ĊĠĠĠĠĠĠĠ Ġfont . comments ĠshouldBe Ġ" A Ġcomment " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" return Ġfont Ġwhen Ġoptional Ġparameters Ġare Ġomitted ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 5 Ġ 4 Ġ 3 Ġ- 1 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 5 ) ĊĠĠĠĠĠĠĠ Ġval Ġfont Ġ= ĠFig Font . from File ( font File ) ĊĊĠĠĠĠĠĠĠ Ġfont . height ĠshouldBe Ġ 5 ĊĠĠĠĠĠĠĠ Ġfont . baseline ĠshouldBe Ġ 4 ĊĠĠĠĠĠĠĠ Ġfont . maxLength ĠshouldBe Ġ 3 ĊĠĠĠĠĠĠĠ Ġfont . horizontalLayout ĠshouldBe ĠHorizontal Layout Mode . Full Width ĊĠĠĠĠĠĠĠ Ġfont . print Direction ĠshouldBe ĠPrint Direction . Left To Right ĊĠĠĠĠĠĠĠ Ġfont . horizontal Sm ush ing Rules . shouldBe Empty () ĊĠĠĠĠĠĠĠ Ġfont . comments ĠshouldBe Ġ" A Ġcomment " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" ignore Ġextra Ġheader Ġparameters ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 Ġextra Ġparams Ġhere Ġ 2 3 4 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġfont Ġ= ĠFig Font . from File ( font File ) ĊĊĠĠĠĠĠĠĠ Ġfont . height ĠshouldBe Ġ 1 ĊĠĠĠĠĠĠĠ Ġfont . baseline ĠshouldBe Ġ 1 ĊĠĠĠĠĠĠĠ Ġfont . maxLength ĠshouldBe Ġ 2 ĊĠĠĠĠĠĠĠ Ġfont . horizontalLayout ĠshouldBe ĠHorizontal Layout Mode . Full Width ĊĠĠĠĠĠĠĠ Ġfont . print Direction ĠshouldBe ĠPrint Direction . Left To Right ĊĠĠĠĠĠĠĠ Ġfont . horizontal Sm ush ing Rules Ġshould Contain ĠHorizontal Sm ush ing Rule . Equal Character ĊĠĠĠĠĠĠĠ Ġfont . comments ĠshouldBe Ġ" A Ġcomment " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġempty Ġheader ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" Ġ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġinvalid Ġsignature ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" fl and ers \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġmultiple Ġhard blank Ġcharacters ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \ $\ $ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġinvalid Ġhard blank Ġcharacter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĠFig Font . from File ( fake Fig Font File (" f lf 2 a \ u 0 0 2 0 Ġ 1 Ġ 1 Ġ 1 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 )) Ġ} ĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĠFig Font . from File ( fake Fig Font File (" f lf 2 a \ u 0 0 0 d Ġ 1 Ġ 1 Ġ 1 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 )) Ġ} ĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĠFig Font . from File ( fake Fig Font File (" f lf 2 a \ u 0 0 0 a Ġ 1 Ġ 1 Ġ 1 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 )) Ġ} ĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĠFig Font . from File ( fake Fig Font File (" f lf 2 a \ u 0 0 0 0 Ġ 1 Ġ 1 Ġ 1 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 )) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġnon - numeric Ġheight Ġparameter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġheight Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġheight Ġis Ġlarger Ġthan Ġactual Ġcharacter Ġheight ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Character Height Ġ= Ġ 2 ĊĠĠĠĠĠĠĠ Ġval Ġheight Param Ġ= Ġactual Character Height Ġ+ Ġ 1 ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ$ height Param Ġ 1 Ġ 1 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġactual Character Height ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġnon - numeric Ġbaseline Ġparameter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġbaseline Ġ 2 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġbaseline Ġis Ġless Ġthan Ġ 1 ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbaseline Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ$ baseline Ġ 2 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġbaseline Ġis Ġgreater Ġthan Ġgiven Ġheight ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġheight Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġval Ġbaseline Ġ= Ġheight Ġ+ Ġ 1 ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ$ height Ġ$ baseline Ġ 2 Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġnon - numeric Ġmax Ġlength Ġparameter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 ĠmaxLength Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġmax Ġlength Ġis Ġsmaller Ġthan Ġactual Ġcharacter Ġwidth ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Character Width Ġ= Ġ 2 ĊĠĠĠĠĠĠĠ Ġval ĠmaxLength Param Ġ= Ġactual Character Width Ġ- Ġ 1 ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ$ maxLength Param Ġ- 1 Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġactual Character Width , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġnon - numeric Ġold Ġlayout Ġparameter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġold Layout Ġ 1 Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġnon - numeric Ġcomment Ġlines Ġparameter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġcomment Lines Ġ 0 Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġmore Ġcomment Ġlines Ġthan Ġspecified ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcomments Ġ= Ġ" A Ġcomment \ n extra Ġline " ĊĠĠĠĠĠĠĠ Ġval Ġcomment Lines Ġ= Ġcomments . lines (). size Ġ- Ġ 1 ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ$ comment Lines Ġ 0 Ġ 1 ", Ġcomments , Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" return Ġleft - to - right Ġfont Ġwhen Ġprint Ġdirection Ġparameter Ġis Ġ 0 ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġprint Direction Param Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġ$ print Direction Param Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġfont Ġ= ĠFig Font . from File ( font File ) ĊĊĠĠĠĠĠĠĠ Ġfont . print Direction ĠshouldBe ĠPrint Direction . Left To Right ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" return Ġright - to - left Ġfont Ġwhen Ġprint Ġdirection Ġparameter Ġis Ġ 1 ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġprint Direction Param Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġ$ print Direction Param Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġfont Ġ= ĠFig Font . from File ( font File ) ĊĊĠĠĠĠĠĠĠ Ġfont . print Direction ĠshouldBe ĠPrint Direction . Right To Left ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġinvalid Ġprint Ġdirection Ġparameter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠValid Ġvalues Ġare Ġ 0 Ġand Ġ 1 ĊĠĠĠĠĠĠĠ Ġval Ġprint Direction Ġ= Ġ 2 ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġ$ print Direction Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġnon - numeric Ġprint Ġdirection Ġparameter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġprint Direction Ġ 1 ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġshould (" throw Ġexception Ġwhen Ġgiven Ġnon - numeric Ġfull Ġlayout Ġparameter ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfont File Ġ= Ġfake Fig Font File (" f lf 2 a \$ Ġ 1 Ġ 1 Ġ 2 Ġ- 1 Ġ 1 Ġ 0 Ġfull Layout ", Ġ" A Ġcomment ", Ġ 1 , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġshould Throw < Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFig Font . from File ( font File ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ })