/* Ċ Ġ* ĠCopyright Ġ 2 0 1 8 - 2 0 1 9 Ġhttps :// www . val ik tor . org Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġorg . val ik tor Ċ Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . val ik tor . Constraint Violation Fixture . Empty Constraint Ċ import Ġorg . val ik tor . Constraint Violation Fixture . Test Constraint Ċ import Ġkotlin . test . Test Ċ import Ġkotlin . test . assertEquals Ċ import Ġkotlin . test . assert Fails With Ċ Ċ private Ġobject ĠConstraint Violation Fixture Ġ{ ĊĊĠĠĠ Ġobject ĠEmpty Constraint Ġ: ĠConstraint ĊĊĠĠĠ Ġdata Ġclass ĠTest Constraint ( val Ġvalue 1 : ĠString , Ġval Ġvalue 2 : ĠString ) Ġ: ĠConstraint Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġmessage Params : ĠMap < String , Ġ*> Ġ= Ġmap Of (" value 1 " Ġto Ġvalue 1 , Ġ" value 2 " Ġto Ġvalue 2 ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠConstraint Violation Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġcreate ĠConstraint Violation `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġconstraint Violation : ĠConstraint Violation Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDefault Constraint Violation ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperty Ġ= Ġ" name ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" Test ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconstraint Ġ= ĠEmpty Constraint ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( constraint Violation . property , Ġ" name ") ĊĠĠĠĠĠĠĠ ĠassertEquals ( constraint Violation . value , Ġ" Test ") ĊĠĠĠĠĠĠĠ ĠassertEquals ( constraint Violation . constraint . name , Ġ" Empty Constraint ") ĊĠĠĠĠĠĠĠ ĠassertEquals ( constraint Violation . constraint . message Key , Ġ" org . val ik tor . Constraint Violation Fixture \$ Empty Constraint . message ") ĊĠĠĠĠĠĠĠ ĠassertEquals ( constraint Violation . constraint . message Params , Ġempty Map < String , ĠAny >()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠConstraint Violation Exception Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġthrows ĠConstraint Violation Exception `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexception Ġ= Ġassert Fails With < Constraint Violation Exception > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠConstraint Violation Exception ( set Of ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDefault Constraint Violation ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperty Ġ= Ġ" name ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" Test ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconstraint Ġ= ĠEmpty Constraint ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDefault Constraint Violation ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperty Ġ= Ġ" name ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" Test 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconstraint Ġ= ĠTest Constraint (" test Ġvalue Ġ 1 ", Ġ" test Ġvalue Ġ 2 ")) )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠassertThat ( exception . constraint Vi olations ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. contains Exactly ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDefault Constraint Violation ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperty Ġ= Ġ" name ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" Test ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconstraint Ġ= ĠEmpty Constraint ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDefault Constraint Violation ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperty Ġ= Ġ" name ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" Test 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconstraint Ġ= ĠTest Constraint (" test Ġvalue Ġ 1 ", Ġ" test Ġvalue Ġ 2 "))) ĊĠĠĠ Ġ} Ċ } Ċ