/* Ċ Ġ* ĠCopyright Ġ@ Ġ 2 0 2 0 Ġ- Ġpresent Ġ 8 x 8 , ĠInc . Ċ Ġ* Ċ Ġ* Ġ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 . j its i . j ico fo . bridge Ċ Ċ import Ġio . kot est . matchers . shouldBe Ċ import Ġio . kot est . matchers . types . shouldBe InstanceOf Ċ import Ġorg . j its i . j ico fo . Config Test Ċ import Ġorg . j its i . j ico fo . bridge . Bridge Config . Companion . config Ċ import Ġorg . j its i . utils . mins Ċ Ċ class ĠBridge Config Test Ġ: ĠConfig Test () Ġ{ ĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġcontext (" with Ġno Ġconfig Ġthe Ġdefaults Ġfrom Ġreference . conf Ġshould Ġbe Ġused ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Bridge Participants ĠshouldBe Ġ- 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Bridge Packet Rate P ps ĠshouldBe Ġ 5 0 0 0 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . average Participant Packet Rate P ps ĠshouldBe Ġ 5 0 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontext (" with Ġlegacy Ġconfig ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwith Legacy Config ( legacy Config ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Bridge Participants ĠshouldBe Ġ 1 1 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Bridge Packet Rate P ps ĠshouldBe Ġ 1 1 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . average Participant Packet Rate P ps ĠshouldBe Ġ 1 1 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontext (" with Ġnew Ġconfig ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwith New Config ( new Config ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Bridge Participants ĠshouldBe Ġ 2 2 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Bridge Packet Rate P ps ĠshouldBe Ġ 2 2 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . average Participant Packet Rate P ps ĠshouldBe Ġ 2 2 2 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontext (" with Ġboth Ġlegacy Ġand Ġnew Ġconfig Ġthe Ġlegacy Ġvalues Ġshould Ġbe Ġused ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwith Legacy Config ( legacy Config ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwith New Config ( new Config ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Bridge Participants ĠshouldBe Ġ 1 1 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Bridge Packet Rate P ps ĠshouldBe Ġ 1 1 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . average Participant Packet Rate P ps ĠshouldBe Ġ 1 1 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontext (" Selection Ġstrategy ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext (" With Ġdefault Ġconfig ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . selection Strategy . shouldBe InstanceOf < Single Bridge Selection Strategy >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext (" With Ġlegacy Ġconfig ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwith Legacy Config ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" org . j its i . j ico fo . Bridge Selector . BR ID GE _ SELECTION _ STR ATE GY = Split Bridge Selection Strategy ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . selection Strategy . shouldBe InstanceOf < Split Bridge Selection Strategy >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext (" With Ġnew Ġconfig ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwith New Config (" j ico fo . bridge . selection - strategy = Region Based Bridge Selection Strategy ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . selection Strategy . shouldBe InstanceOf < Region Based Bridge Selection Strategy >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontext (" Health Ġchecks ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwith New Config (" j ico fo . bridge . health - checks . interval Ġ= Ġ 2 Ġminutes ". trim Indent ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . health Checks Interval ĠshouldBe Ġ 2 . mins ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . health Checks Retry Delay ĠshouldBe Ġ 1 . mins ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ private Ġval Ġlegacy Config Ġ= Ġ""" Ċ org . j its i . j ico fo . Bridge Selector . MAX _ P ARTIC IP ANT S _ PER _ BR ID GE = 1 1 1 Ċ org . j its i . j ico fo . Bridge Selector . MAX _ BR ID GE _ PACKET _ RATE = 1 1 1 Ċ org . j its i . j ico fo . Bridge Selector . AVG _ P ARTIC IP ANT _ PACKET _ RATE = 1 1 1 Ċ """. trim Indent () Ċ Ċ private Ġval Ġnew Config Ġ= Ġ""" Ċ j ico fo Ġ{ ĊĠĠĠ Ġbridge Ġ{ ĊĠĠĠĠĠĠĠ Ġmax - bridge - participants = 2 2 2 ĊĠĠĠĠĠĠĠ Ġmax - bridge - packet - rate = 2 2 2 ĊĠĠĠĠĠĠĠ Ġaverage - participant - packet - rate - pp s = 2 2 2 ĊĠĠĠ Ġ} Ċ } ĠĠĠĠ Ċ """. trim Indent () Ċ