package Ġcom . squareup . mos hi . kotlin Ċ Ċ import Ġcom . squareup . mos hi . Json Class Ċ import Ġcom . squareup . mos hi . M oshi Ċ import Ġcom . squareup . mos hi . internal . Util Ċ import Ġorg . junit . Test Ċ Ċ class ĠDefault Constructor Test Ġ{ ĊĊĠ Ġ@ Test Ġfun Ġminimal () Ġ{ ĊĠĠĠ Ġval Ġexpected Ġ= ĠTest Class (" required Class ") ĊĠĠĠ Ġval Ġargs Ġ= ĠarrayOf (" required Class ", Ġnull , Ġ 0 , Ġnull , Ġ 0 , Ġ 0 ) ĊĠĠĠ Ġval Ġmask Ġ= ĠUtil . create Default Values Parameters Mask ( true , Ġfalse , Ġfalse , Ġfalse , Ġfalse , Ġfalse ) ĊĠĠĠ Ġval Ġconstructor Ġ= ĠUtil . lookup Defaults Constructor ( TestClass :: class . java ) ĊĠĠĠ Ġval Ġinstance Ġ= ĠUtil . invoke Default Constructor ( TestClass :: class . java , Ġconstructor , Ġmask , Ġ* args ) ĊĠĠĠ Ġcheck ( instance Ġ== Ġexpected ) Ġ{ ĊĠĠĠĠĠ Ġ" No Ġmatch :\ n Actual Ġ Ġ: Ġ$ instance \ n Expected : Ġ$ expected " ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġall Set () Ġ{ ĊĠĠĠ Ġval Ġexpected Ġ= ĠTest Class (" required Class ", Ġ" custom Optional ", Ġ 4 , Ġ" set Dynamic ", Ġ 5 , Ġ 6 ) ĊĠĠĠ Ġval Ġargs Ġ= ĠarrayOf (" required Class ", Ġ" custom Optional ", Ġ 4 , Ġ" set Dynamic ", Ġ 5 , Ġ 6 ) ĊĠĠĠ Ġval Ġmask Ġ= ĠUtil . create Default Values Parameters Mask ( true , Ġtrue , Ġtrue , Ġtrue , Ġtrue , Ġtrue ) ĊĠĠĠ Ġval Ġconstructor Ġ= ĠUtil . lookup Defaults Constructor ( TestClass :: class . java ) ĊĠĠĠ Ġval Ġinstance Ġ= ĠUtil . invoke Default Constructor ( TestClass :: class . java , Ġconstructor , Ġmask , Ġ* args ) ĊĠĠĠ Ġcheck ( instance Ġ== Ġexpected ) Ġ{ ĊĠĠĠĠĠ Ġ" No Ġmatch :\ n Actual Ġ Ġ: Ġ$ instance \ n Expected : Ġ$ expected " ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġcustom Dynamic () Ġ{ ĊĠĠĠ Ġval Ġexpected Ġ= ĠTest Class (" required Class ", Ġ" custom Optional ") ĊĠĠĠ Ġval Ġargs Ġ= ĠarrayOf (" required Class ", Ġ" custom Optional ", Ġ 0 , Ġnull , Ġ 0 , Ġ 0 ) ĊĠĠĠ Ġval Ġmask Ġ= ĠUtil . create Default Values Parameters Mask ( true , Ġtrue , Ġfalse , Ġfalse , Ġfalse , Ġfalse ) ĊĠĠĠ Ġval Ġconstructor Ġ= ĠUtil . lookup Defaults Constructor ( TestClass :: class . java ) ĊĠĠĠ Ġval Ġinstance Ġ= ĠUtil . invoke Default Constructor ( TestClass :: class . java , Ġconstructor , Ġmask , Ġ* args ) ĊĠĠĠ Ġcheck ( instance Ġ== Ġexpected ) Ġ{ ĊĠĠĠĠĠ Ġ" No Ġmatch :\ n Actual Ġ Ġ: Ġ$ instance \ n Expected : Ġ$ expected " ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġminimal _ code Gen () Ġ{ ĊĠĠĠ Ġval Ġexpected Ġ= ĠTest Class (" required Class ") ĊĠĠĠ Ġval Ġjson Ġ= Ġ""" {" required ":" required Class "} """ ĊĠĠĠ Ġval Ġinstance Ġ= ĠM oshi . Builder (). build (). adapter < TestClass >( TestClass :: class . java ) ĊĠĠĠĠĠĠĠ Ġ. fromJson ( json ) !! ĊĠĠĠ Ġcheck ( instance Ġ== Ġexpected ) Ġ{ ĊĠĠĠĠĠ Ġ" No Ġmatch :\ n Actual Ġ Ġ: Ġ$ instance \ n Expected : Ġ$ expected " ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġall Set _ code Gen () Ġ{ ĊĠĠĠ Ġval Ġexpected Ġ= ĠTest Class (" required Class ", Ġ" custom Optional ", Ġ 4 , Ġ" set Dynamic ", Ġ 5 , Ġ 6 ) ĊĠĠĠ Ġval Ġjson Ġ= Ġ""" {" required ":" required Class "," optional ":" custom Optional "," optional 2 ": 4 ," dynamic Self Reference Optional ":" set Dynamic "," dynamic Optional ": 5 ," dynamic Inline Optional ": 6 } """ ĊĠĠĠ Ġval Ġinstance Ġ= ĠM oshi . Builder (). build (). adapter < TestClass >( TestClass :: class . java ) ĊĠĠĠĠĠĠĠ Ġ. fromJson ( json ) !! ĊĠĠĠ Ġcheck ( instance Ġ== Ġexpected ) Ġ{ ĊĠĠĠĠĠ Ġ" No Ġmatch :\ n Actual Ġ Ġ: Ġ$ instance \ n Expected : Ġ$ expected " ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġcustom Dynamic _ code Gen () Ġ{ ĊĠĠĠ Ġval Ġexpected Ġ= ĠTest Class (" required Class ", Ġ" custom Optional ") ĊĠĠĠ Ġval Ġjson Ġ= Ġ""" {" required ":" required Class "," optional ":" custom Optional "} """ ĊĠĠĠ Ġval Ġinstance Ġ= ĠM oshi . Builder (). build (). adapter < TestClass >( TestClass :: class . java ) ĊĠĠĠĠĠĠĠ Ġ. fromJson ( json ) !! ĊĠĠĠ Ġcheck ( instance Ġ== Ġexpected ) Ġ{ ĊĠĠĠĠĠ Ġ" No Ġmatch :\ n Actual Ġ Ġ: Ġ$ instance \ n Expected : Ġ$ expected " ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ Ċ @ Json Class ( generate Adapter Ġ= Ġtrue ) Ċ data Ġclass ĠTest Class ( ĊĠĠĠ Ġval Ġrequired : ĠString , ĊĠĠĠ Ġval Ġoptional : ĠString Ġ= Ġ" optional ", ĊĠĠĠ Ġval Ġoptional 2 : ĠInt Ġ= Ġ 2 , ĊĠĠĠ Ġval Ġdynamic Self Reference Optional : ĠString Ġ= Ġrequired , ĊĠĠĠ Ġval Ġdynamic Optional : ĠInt Ġ= Ġcreate Int (), ĊĠĠĠ Ġval Ġdynamic Inline Optional : ĠInt Ġ= Ġcreate Inline Int () Ċ ) Ċ Ċ private Ġfun Ġcreate Int (): ĠInt Ġ{ ĊĠ Ġreturn Ġ 3 Ċ } Ċ Ċ @ Suppress (" NOTH ING _ TO _ INLINE ") Ċ private Ġinline Ġfun Ġcreate Inline Int (): ĠInt Ġ{ ĊĠ Ġreturn Ġ 3 Ċ } Ċ