package Ġtest Ċ Ċ import Ġch . hs r . dsl . dw rtc . signal ing . Peer Connection Details Ċ import Ġch . hs r . dsl . dw rtc . signal ing . extract Peer Details Ċ import Ġio . kot lint est . matchers . collections . shouldBe Empty Ċ import Ġio . kot lint est . matchers . collections . should Contain Exactly Ċ import Ġio . kot lint est . should Throw Ċ import Ġio . kot lint est . specs . Word Spec Ċ Ċ class ĠEx traction Test Ġ: ĠWord Spec () Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġ" an Ġempty Ġstring Ġlist " Ġshould Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġextract Peer Details Ġ= Ġextract Peer Details ( emptyList ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" yield Ġan Ġempty Ġpeer Ġlist " Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextract Peer Details . shouldBe Empty () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ" a Ġmalformed Ġstring Ġwith Ġno Ġcol ons " Ġshould Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" throw Ġan Ġexception " Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshould Throw < Number FormatException > Ġ{ Ġextract Peer Details ( listOf (" no Col ons Here ")) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ" a Ġmalformed Ġstring Ġwith Ġtoo Ġmany Ġcol ons " Ġshould Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" throw Ġan Ġexception " Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshould Throw < Number FormatException > Ġ{ Ġextract Peer Details ( listOf (" too : 5 0 0 0 : 6 0 0 0 ")) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ" a Ġnull Ġlist " Ġshould Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġextract Peer Details Ġ= Ġextract Peer Details ( null ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" yield Ġan Ġempty Ġpeer Ġlist " Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextract Peer Details . shouldBe Empty () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ" a Ġstring Ġlist Ġwith Ġone Ġelements " Ġshould Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġextract Peer Details Ġ= Ġextract Peer Details ( listOf (" 1 2 7 . 0 . 0 . 1 : 5 0 0 0 ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" yield Ġexactly Ġone Ġresult " Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= ĠlistOf ( Peer Connection Details (" 1 2 7 . 0 . 0 . 1 ", Ġ 5 0 0 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextract Peer Details . should Contain Exactly ( expected ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ" a Ġstring Ġlist Ġwith Ġmultiple Ġelements " Ġshould Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġextract Peer Details Ġ= Ġextract Peer Details ( listOf (" 1 2 7 . 0 . 0 . 1 : 5 0 0 0 ", Ġ" 1 2 7 . 0 . 0 . 1 : 4 0 0 0 ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" yield Ġall Ġresults Ġresult " Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPeer Connection Details (" 1 2 7 . 0 . 0 . 1 ", Ġ 5 0 0 0 ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPeer Connection Details (" 1 2 7 . 0 . 0 . 1 ", Ġ 4 0 0 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextract Peer Details . should Contain Exactly ( expected ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ