package Ġcom . atar ax ia . gab riel _ vz . factory Ċ Ċ import Ġcom . atar ax ia . gab riel _ vz . model . Work Ċ import Ġcom . atar ax ia . gab riel _ vz . persistence . Work Entity Ċ import Ġcom . atar ax ia . gab riel _ vz . resource . Work Resource Ċ import Ġio . kot lint est . matchers . types . shouldBe InstanceOf Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . junit . jupiter . api . Test Instance Ċ import Ġorg . junit . jupiter . api . Test Instance . Lifecycle . PER _ CLASS Ċ import Ġjava . time . Offset DateTime Ċ import Ġjava . util .* Ċ import Ġkotlin . test . assertEquals Ċ import Ġkotlin . test . assertNotNull Ċ Ċ @ Test Instance ( PER _ CLASS ) Ċ internal Ġclass ĠWork Factory Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġwork ID Ġ= ĠUUID . randomUUID (). toString () ĊĠĠĠ Ġprivate Ġvar Ġperson Factory Ġ= ĠPerson Factory () ĊĠĠĠ Ġprivate Ġvar Ġliter ature Factory Ġ= ĠL iter ature Factory () ĊĠĠĠ Ġprivate Ġvar Ġdisco graphy Factory Ġ= ĠDis co graphy Factory () ĊĠĠĠ Ġprivate Ġval Ġcoordinates Factory Ġ= ĠCoordinates Factory () ĊĠĠĠ Ġprivate Ġval Ġtext Factory Ġ= ĠText Factory () ĊĠĠĠ Ġprivate Ġval Ġin cipit Factory Ġ= ĠInc ip it Factory () ĊĠĠĠ Ġprivate Ġval Ġplace Factory Ġ= ĠPlace Factory ( coordinates Factory ) ĊĠĠĠ Ġprivate Ġvar Ġwork Factory Ġ= ĠWork Factory ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdisco graphy Factory Ġ= Ġdisco graphy Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġliter ature Factory Ġ= Ġliter ature Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperson Factory Ġ= Ġperson Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Factory Ġ= Ġtext Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġin cipit Factory Ġ= Ġin cipit Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplace Factory Ġ= Ġplace Factory ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġfun Ġsimple Work () Ġ= ĠWork ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġwork ID , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreated Ġ= ĠOffset DateTime . now (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodified Ġ= ĠOffset DateTime . now (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ" Son ata ĠC - Dur ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġop us Ġ= Ġ" Op us Ġ 2 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcategory Ġ= Ġ" Kl avier mus ik ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġin cipit Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomment ary Ġ= Ġ" T ol les ĠW erk ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdate Of Creation Ġ= Ġ" 2 3 . 1 2 . 1 9 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdate Of Pre mi ere Ġ= Ġ" 2 6 . 0 9 . 2 0 1 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdedic ation Ġ= Ġ" F Ã¼r Ġm ich ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplace Of Pre mi ere Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġduration Ġ= Ġ" 2 ĠMin uten ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor Ġ= Ġ" Max ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelated Text Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinstrument ation Ġ= Ġ" F Ã¼r ĠK l avier ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelated L iter ature Ġ= Ġmutable ListOf (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelated Pers ons Ġ= Ġmutable ListOf (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdisco graph ies Ġ= Ġmutable ListOf () ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġfun Ġsimple Work Entity () Ġ= ĠWork Entity ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġwork ID , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreated Ġ= ĠOffset DateTime . now (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodified Ġ= ĠOffset DateTime . now (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ" Son ata ĠC - Dur ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġop us Ġ= Ġ" Op us Ġ 2 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcategory Ġ= Ġ" Kl avier mus ik ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomment ary Ġ= Ġ" T ol les ĠW erk ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdate Of Creation Ġ= Ġ" 2 3 . 1 2 . 1 9 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdate Of Pre mi ere Ġ= Ġ" 2 6 . 0 9 . 2 0 1 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdedic ation Ġ= Ġ" F Ã¼r Ġm ich ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplace Of Pre mi ere Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġduration Ġ= Ġ" 2 ĠMin uten ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor Ġ= Ġ" Max ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelated Text Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinstrument ation Ġ= Ġ" F Ã¼r ĠK l avier ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġliter ature List Ġ= Ġmutable ListOf (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelated Pers ons Ġ= Ġmutable ListOf (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdisco graph ies Ġ= Ġmutable ListOf () ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġfun Ġsimple Work Resource () Ġ= ĠWork Resource ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġself Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcollection Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġwork ID , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreated Ġ= ĠOffset DateTime . now (). toString (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodified Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ" Son ata ĠC - Dur ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġop us Ġ= Ġ" Op us Ġ 2 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcategory Ġ= Ġ" Kl avier mus ik ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġin cipit Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomment ary Ġ= Ġ" T ol les ĠW erk ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdate Of Creation Ġ= Ġ" 2 3 . 1 2 . 1 9 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdate Of Pre mi ere Ġ= Ġ" 2 6 . 0 9 . 2 0 1 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdedic ation Ġ= Ġ" F Ã¼r Ġm ich ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplace Of Pre mi ere Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġduration Ġ= Ġ" 2 ĠMin uten ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor Ġ= Ġ" Max ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelated Text Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinstrument ation Ġ= Ġ" F Ã¼r ĠK l avier ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġliter ature List Ġ= Ġmutable Set Of (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelated Pers ons Ġ= Ġmutable Set Of (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdisco graph ies Ġ= Ġmutable Set Of () ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` work Model Ġfrom Ġwork Entity `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwork Entity Ġ= Ġsimple Work Entity () ĊĠĠĠĠĠĠĠ Ġval Ġwork Ġ= Ġwork Factory . model From Entity ( work Entity ) ĊĊĠĠĠĠĠĠĠ ĠassertNotNull ( work ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . id , Ġwork Entity . id ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . title , Ġwork Entity . title ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . category , Ġwork Entity . category ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . comment ary , Ġwork Entity . comment ary ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . date Of Creation , Ġwork Entity . date Of Creation ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . date Of Pre mi ere , Ġwork Entity . date Of Pre mi ere ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . ded ication , Ġwork Entity . ded ication ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . duration , Ġwork Entity . duration ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . editor , Ġwork Entity . editor ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . instrumentation , Ġwork Entity . instrumentation ) ĊĠĠĠĠĠĠĠ Ġwork . shouldBe InstanceOf < Work >() ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` work Entity Ġfrom Ġwork Model `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwork Ġ= Ġsimple Work () ĊĠĠĠĠĠĠĠ Ġval Ġwork Entity Ġ= Ġwork Factory . entity From Model ( work ) ĊĊĠĠĠĠĠĠĠ ĠassertNotNull ( work Entity ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . id , Ġwork . id ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . title , Ġwork . title ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . category , Ġwork . category ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . comment ary , Ġwork . comment ary ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . date Of Creation , Ġwork . date Of Creation ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . date Of Pre mi ere , Ġwork . date Of Pre mi ere ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . ded ication , Ġwork . ded ication ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . duration , Ġwork . duration ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . editor , Ġwork . editor ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Entity . instrumentation , Ġwork . instrumentation ) ĊĠĠĠĠĠĠĠ Ġwork Entity . shouldBe InstanceOf < Work Entity >() ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` work Model Ġfrom Ġwork Resource `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwork Resource Ġ= Ġsimple Work Resource () ĊĠĠĠĠĠĠĠ Ġval Ġwork Ġ= Ġwork Factory . model From Resource ( work Resource ) ĊĊĠĠĠĠĠĠĠ ĠassertNotNull ( work ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . id , Ġwork Resource . id ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . title , Ġwork Resource . title ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . category , Ġwork Resource . category ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . comment ary , Ġwork Resource . comment ary ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . date Of Creation , Ġwork Resource . date Of Creation ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . date Of Pre mi ere , Ġwork Resource . date Of Pre mi ere ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . ded ication , Ġwork Resource . ded ication ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . duration , Ġwork Resource . duration ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . editor , Ġwork Resource . editor ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work . instrumentation , Ġwork Resource . instrumentation ) ĊĠĠĠĠĠĠĠ Ġwork . shouldBe InstanceOf < Work >() ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` work Resource Ġfrom Ġwork Model `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwork Ġ= Ġsimple Work () ĊĠĠĠĠĠĠĠ Ġval Ġwork Resource Ġ= Ġwork Factory . resource From Model ( work ) ĊĊĠĠĠĠĠĠĠ ĠassertNotNull ( work Resource ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . id , Ġwork . id ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . title , Ġwork . title ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . category , Ġwork . category ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . comment ary , Ġwork . comment ary ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . date Of Creation , Ġwork . date Of Creation ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . date Of Pre mi ere , Ġwork . date Of Pre mi ere ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . ded ication , Ġwork . ded ication ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . duration , Ġwork . duration ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . editor , Ġwork . editor ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( work Resource . instrumentation , Ġwork . instrumentation ) ĊĠĠĠĠĠĠĠ Ġwork Resource . shouldBe InstanceOf < Work Resource >() ĊĠĠĠ Ġ} Ċ Ċ }