package Ġde . p 7 s 1 . qa . se ven fac ette . conditions Ċ Ċ import Ġde . p 7 s 1 . qa . se ven fac ette . utils . Condition Mismatch Exception Ċ import Ġorg . apache . commons . lang 3 . StringUtils Ċ Ċ class ĠCondition Assert Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġ< T > Ġevaluate ( item : ĠT , Ġmatcher : ĠCondition < T >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! matcher . matches ( item )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠCondition Mismatch Exception ( matcher . description ( item ). toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ abstract Ġclass ĠCondition < in ĠT > Ġ{ ĊĊĠĠĠ Ġabstract Ġfun Ġmatches ( item : ĠT ): ĠBoolean ĊĊĠĠĠ Ġabstract Ġfun Ġdescription ( item : ĠT ): ĠDescription ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠStringUtils . join ( StringUtils . split By Character Type Camel Case ( this . java Class . simple Name ), Ġ" Ġ"). toLowerCase () ĊĠĠĠ Ġ} Ċ } Ċ