package Ġuk . gov . just ice . digital . h mp ps . h mp ps inter vention ss ervice . util Ċ Ċ import Ġorg . springframework . boot . test . autoconfigure . orm . jpa . Test EntityManager Ċ Ċ open Ġclass ĠEntity Factory ( val Ġem : ĠTest EntityManager ?) Ġ{ ĊĠ Ġinline Ġfun Ġ< re ified ĠT > Ġsave ( t : ĠT ): ĠT Ġ{ ĊĠĠĠ Ġif Ġ( em Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġreturn Ġt ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// Ġif Ġthe Ġentity Ġexists , Ġupdate Ġit . Ġotherwise , Ġsave Ġit . ĊĠĠĠ Ġif Ġ( em . find ( T :: class . java , Ġem . entityManager . entityManager Factory . persistence Unit Util . getIdentifier ( t )) Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġem . persist ( t ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠ Ġem . merge ( t ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġem . flush () ĊĠĠĠ Ġreturn Ġt ĊĠ Ġ} Ċ } Ċ