/* Ċ Ġ* ĠCopyright Ġ 2 0 1 5 - 2 0 2 1 Ġthe Ġoriginal Ġauthor Ġor Ġauthors . Ċ Ġ* Ċ Ġ* ĠAll Ġrights Ġreserved . ĠThis Ġprogram Ġand Ġthe Ġaccompanying Ġmaterials Ġare Ċ Ġ* Ġmade Ġavailable Ġunder Ġthe Ġterms Ġof Ġthe ĠEclipse ĠPublic ĠLicense Ġv 2 . 0 Ġwhich Ċ Ġ* Ġaccomp anies Ġthis Ġdistribution Ġand Ġis Ġavailable Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . eclipse . org / legal / e pl - v 2 0 . html Ċ Ġ*/ Ċ Ċ package Ġcom . example . project Ċ Ċ import Ġorg . junit . jupiter . api . Assertions . assertEquals Ċ Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . junit . jupiter . api . assert Throws Ċ import Ġorg . junit . jupiter . params . Parameterized Test Ċ import Ġorg . junit . jupiter . params . provider . Csv Source Ċ Ċ class ĠCalculator Tests Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` 1 Ġ+ Ġ 1 Ġ= Ġ 2 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcalculator Ġ= ĠCalculator () ĊĠĠĠĠĠĠĠ ĠassertEquals ( 2 , Ġcalculator . add ( 1 , Ġ 1 ), Ġ" 1 Ġ+ Ġ 1 Ġshould Ġequal Ġ 2 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Parameterized Test ( name Ġ= Ġ"{ 0 } Ġ+ Ġ{ 1 } Ġ= Ġ{ 2 }") ĊĠĠĠ Ġ@ Csv Source ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 0 , ĠĠĠĠ 1 , ĠĠĠ 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 , ĠĠĠĠ 2 , ĠĠĠ 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 4 9 , ĠĠ 5 1 , Ġ 1 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 , ĠĠ 1 0 0 , Ġ 1 0 1 " ĊĠĠĠ Ġ) ĊĠĠĠ Ġfun Ġadd ( first : ĠInt , Ġsecond : ĠInt , Ġexpected Result : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcalculator Ġ= ĠCalculator () ĊĠĠĠĠĠĠĠ ĠassertEquals ( expected Result , Ġcalculator . add ( first , Ġsecond )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ first Ġ+ Ġ$ second Ġshould Ġequal Ġ$ expected Result " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġdivision By Zero Error () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcalculator Ġ= ĠCalculator () ĊĠĠĠĠĠĠĠ Ġval Ġexception Ġ= ĠassertThrows < AssertionError > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcalculator . div ( 1 , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠassertEquals (" Division Ġby ĠZero ", Ġexception . message ) ĊĠĠĠ Ġ} Ċ } Ċ