package Ġcom . atlassian . boot graph . api Ċ Ċ import Ġassert k . Assert Ċ import Ġassert k . assertions . support . expected Ċ import Ġcom . atlassian . boot graph . api . model . Graph Model Ċ Ċ fun ĠAssert < Graph Model >. contains Nodes ( var arg Ġnames : ĠString ) Ġ= Ġgiven Ġ{ Ġactual Ġ-> ĊĠĠĠ Ġval Ġnode Names Ġ= Ġactual . get Nodes () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . name Ġ} ĊĠĠĠ Ġfor Ġ( name Ġin Ġnames ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! node Names . contains ( name )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpected (" graph Ġto Ġcontain Ġnode Ġwith Ġname Ġ'${ name }', Ġbut Ġit Ġdidn 't . ĠNodes Ġin Ġthe Ġgraph : Ġ${ node Names }") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠAssert < Graph Model >. does nt Contain Nodes ( var arg Ġnames : ĠString ) Ġ= Ġgiven Ġ{ Ġactual Ġ-> ĊĠĠĠ Ġval Ġnode Names Ġ= Ġactual . get Nodes () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . name Ġ} ĊĠĠĠ Ġfor Ġ( name Ġin Ġnames ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( node Names . contains ( name )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpected (" graph Ġnot Ġto Ġcontain Ġnode Ġwith Ġname Ġ'${ name }', Ġbut Ġit Ġdid . ĠNodes Ġin Ġthe Ġgraph : Ġ${ node Names }") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠAssert < Graph Model >. contains Edge ( from NodeName : ĠString , Ġto NodeName : ĠString ) Ġ= Ġgiven Ġ{ Ġactual Ġ-> ĊĠĠĠ ĠassertThat ( actual ). contains Nodes ( from NodeName , Ġto NodeName ) ĊĠĠĠ Ġval Ġfrom Node Ġ= Ġactual . getNode ( from NodeName ) ĊĠĠĠ Ġval Ġto Node Ġ= Ġactual . getNode ( to NodeName ) ĊĠĠĠ Ġif Ġ(! from Node !!. has Edge To ( to Node !! )) Ġ{ ĊĠĠĠĠĠĠĠ Ġexpected (" graph Ġto Ġcontain Ġedge Ġfrom Ġ'$ from NodeName ' Ġto Ġ'$ to NodeName ', Ġbut Ġit Ġdidn 't ") ĊĠĠĠ Ġ} Ċ }