package Ġcom . co ach . fl ame . api . customer . request Ċ Ċ import Ġcom . co ach . fl ame . domain . Client Dto Ċ import Ġcom . co ach . fl ame . domain . Customer Type Dto Ċ import Ġcom . nat pr y ce . make ite asy . Make It Easy Ċ import Ġcom . nat pr y ce . make ite asy . Make It Easy . with Ċ import Ġcom . nat pr y ce . make ite asy . Maker Ċ import Ġorg . assertj . core . api . BDD Assertions . catch Throwable Ċ import Ġorg . assertj . core . api . BDD Assertions . then Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ class ĠCustomer Request Converter Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġclass To Test Ġ= ĠCustomer Request Converter () ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcustomer Request Maker : ĠM aker < Customer Request > ĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġcustomer Request Maker Ġ= ĠMake It Easy . an ( Customer Request Maker . Customer Request ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġrequest Ġwith Ġinvalid Ġparameters `() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġuser Request Ġ= Ġcustomer Request Maker ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. but ( with ( Customer Request Maker . type , Ġ" INVALID ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. make () ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġval Ġthrown Ġ= Ġcatch Throwable Ġ{ Ġclass To Test . convert ( user Request ) Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// then ĊĠĠĠĠĠĠĠ Ġthen ( throw n ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( IllegalArgumentException :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message Containing (" Invalid Ġvalue Ġin Ġtype Ġparameter ") ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġrequest Ġsuccessfully Ġfor ĠClient Dto `() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġuser Request Ġ= Ġcustomer Request Maker ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. but ( with ( Customer Request Maker . registration Key , Ġ" KEY ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. make () ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġval Ġclient Ġ= Ġclass To Test . convert ( user Request ) Ġas ĠClient Dto ĊĊĠĠĠĠĠĠĠ Ġ// then ĊĠĠĠĠĠĠĠ Ġthen ( client . login Info ). isNotNull ĊĠĠĠĠĠĠĠ Ġthen ( client . customer Type ). isEqualTo ( Customer Type Dto . CLIENT ) ĊĠĠĠĠĠĠĠ Ġthen ( client . firstName ). isEqualTo ( user Request . firstname ) ĊĠĠĠĠĠĠĠ Ġthen ( client . lastName ). isEqualTo ( user Request . lastname ) ĊĠĠĠĠĠĠĠ Ġthen ( client . login Info !!. username ). isEqualTo ( user Request . email ) ĊĠĠĠĠĠĠĠ Ġthen ( client . login Info !!. password ). isEqualTo ( user Request . password ) ĊĠĠĠĠĠĠĠ Ġthen ( client . registration Key ). isEqualTo (" KEY ") ĊĊĠĠĠ Ġ} Ċ Ċ } Ċ