package Ġcom . think ing logic . example Ċ Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġjava . time . LocalDate Ċ import Ġjava . util .* Ċ Ċ internal Ġclass ĠCollections Data Class Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` builder Ġshould Ġcreate Ġobject Ġwith Ġcorrect Ġproperties `() Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= ĠCollections Data Class ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhash Set Ġ= ĠHashSet ( set Of ( 1 L , Ġ 2 L )), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcollection Of Dates Ġ= ĠlistOf ( LocalDate . now ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf Strings Ġ= ĠlistOf (" Foo ", Ġ" bar "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf Nullable Strings Ġ= ĠlistOf (" Foo ", Ġ" bar ", Ġnull , Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Of Long s Ġ= Ġset Of ( 3 L , Ġ 4 L ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Of Nullable Long s Ġ= Ġset Of ( 3 L , Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtree Map Ġ= ĠTreeMap (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmap Of StringTo Nullable Dates Ġ= Ġmap Of (" foo " Ġto ĠLocalDate . MAX , Ġ" bar " Ġto Ġnull ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠCollections Data Class Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. hash Set ( expected . hash Set ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. collection Of Dates ( expected . collection Of Dates ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. listOf Strings ( expected . listOf Strings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. listOf Nullable Strings ( expected . listOf Nullable Strings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Of Long s ( expected . set Of Long s ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Of Nullable Long s ( expected . set Of Nullable Long s ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. tree Map ( expected . tree Map ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Of StringTo Nullable Dates ( expected . map Of StringTo Nullable Dates ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ Ġ// Ġthen ĊĠĠĠĠĠĠĠ ĠassertThat ( actual ). isEqualTo ( expected ) ĊĠĠĠ Ġ} Ċ Ċ }