package Ġnet . comp osing . compose . sample . post . parsing Ċ Ċ import Ġassert k . assertThat Ċ import Ġassert k . assertions . contains All Ċ import Ġassert k . assertions . does Not Contain Ċ import Ġassert k . assertions . has Size Ċ import Ġassert k . assertions . isTrue Ċ import Ġorg . js oup . J soup Ċ import Ġorg . js oup . nodes . Element Ċ import Ġorg . js oup . parser . Parser Ċ import Ġorg . junit . Test Ċ Ċ class ĠLink ifier Test Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠTARGET _ HTML Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< p > Con Ġl âĢĻ autor izzazione Ġdi Ġem er gen za Ġper Ġil Ġv acc ino Ġcont ro Ġil Ġcor onav irus Ġdi ĠJohn son Ġ& amp ; ĠJohn son Ġ( J & amp ; J ) Ġ< a Ġhref =" https :// www . il post . it / 2 0 2 1 / 0 3 / 1 1 / v acc ino - cor onav irus - john son - john son - autor izz ato - un ione - e urope a /"> da Ġparte Ġdell âĢĻ Un ione ĠEurope a </ a > Ġe Ġpo i Ġ< a Ġhref =" https :// www . a ifa . gov . it / web / guest /-/ a ifa - appro va - il - v acc ino - jan ssen "> da Ġparte Ġdell âĢĻ A gen z ia ĠIt al iana Ġdel ĠF arm aco Ġ( AI FA )</ a >, Ġsi ĠÃ¨ Ġaggi unta Ġuna Ġqu arta Ġsol uzione Ġper Ġcontrast are Ġla Ġpan dem ia Ġo lt re Ġa Ġque lle Ġgi Ãł Ġdispon ib ili Ġdi ĠP f izer - Bio N Tech , ĠMod erna Ġe ĠA stra Z en eca . ĠIl Ġv acc ino ĠÃ¨ Ġstat o Ġautor izz ato Ġin Ġsegu ito Ġalla Ġrac com and azione Ġdell âĢĻ A gen z ia Ġe urope a Ġper Ġi Ġmedic inal i Ġ( E MA ) Ġe Ġdo v re bbe Ġconsent ire Ġdi Ġaccel er are Ġla Ġcamp ag na Ġv acc in ale Ġin ĠE u rop a Ġper ch Ã© Ġrich ie de Ġla Ġsom min istr azione Ġdi Ġuna Ġsol a Ġdo se , Ġa Ġdiffer enza Ġdeg li Ġal tri Ġv acc ini Ġfin ora Ġautor izz ati Ġche Ġne Ġrich ied ono Ġdue Ġa Ġdist anza Ġdi Ġqual che Ġset tim ana .</ p > ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent () ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠTARGET _ HTML _ NO _ LIN KS Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< p > Ne i Ġme si Ġsc ors i Ġl âĢĻ Un ione ĠEurope a Ġa ve va Ġcontr att ato Ġla Ġfor nit ura Ġdi Ġal m eno Ġ 2 0 0 Ġmil ioni Ġdi Ġdos i , Ġa Ġpart ire Ġdal Ġsecond o Ġtri me stre Ġdi Ġquest âĢĻ anno . ĠLe Ġprime Ġcon seg ne Ġdo v reb bero Ġqu indi Ġav ven ire Ġtra Ġla Ġfine Ġdi Ġmar zo Ġe Ġl âĢĻ iniz io Ġdi Ġap ri le , Ġma ĠÃ¨ Ġprob abile Ġche Ġnon Ġsi Ġent rer Ãł Ġa Ġpi eno Ġreg ime Ġda Ġsub ito , Ġcome Ġem ers o Ġneg li Ġult imi Ġg ior ni .</ p > ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent () ĊĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTITLE Ġ= Ġ" Ad en ov irus " ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠTARGET _ HTML _ WITH _ TITLE Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< p >< strong >$ TITLE </ strong >< br > ĠIl Ġv acc ino ĠÃ¨ Ġstat o Ġsv il up p ato Ġda Ġ< a Ġhref =" https :// www . jan ssen . com / it "> Jan ssen ĠPh arm ace ut ica </ a > Ġ( di Ġpropriet Ãł Ġdi ĠJ & amp ; J ) Ġin Ġcollabor azione Ġcon Ġil Ġ< a Ġhref =" https :// www . bid mc . org /"> Centro ĠMed ico ĠBe th ĠIs ra el ĠDe acon ess </ a > Ġ( Stat i ĠUnit i ). ĠA Ġdiffer enza Ġdi Ġquel li Ġdi ĠP f izer - Bio N Tech Ġe Ġdi ĠMod erna , Ġ< a Ġhref =" https :// www . il post . it / 2 0 2 0 / 1 1 / 2 0 / v acc ino - cor onav irus - mr na - modern a - pf izer - b ion tech /"> bas ati Ġsu ĠRNA Ġmess agger o </ a >, Ġil Ġv acc ino Ġdi ĠJ & amp ; J Ġutiliz za Ġun Ġvirus Ġ( Ad en ov irus Ġ 2 6 , Ġo ĠAd 2 6 ) Ġs ost anz ial mente Ġin noc uo Ġper Ġil Ġn ost ro Ġorgan ismo : Ġin Ġgener ale , Ġgli Ġad en ov irus Ġca us ano Ġsint omi Ġlie vi , Ġsim ili Ġa Ġquel li Ġdel Ġr aff redd ore .</ p > ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġtarget Element : ĠElement Ġ= ĊĠĠĠĠĠĠĠ ĠJ soup . parse ( TARGET _ HTML , Ġ"", ĠParser . html Parser ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. select First (" p ") ĊĊĠĠĠ Ġprivate Ġval Ġtarget Element No Links : ĠElement Ġ= ĊĠĠĠĠĠĠĠ ĠJ soup . parse ( TARGET _ HTML _ NO _ LIN KS , Ġ"", ĠParser . html Parser ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. select First (" p ") ĊĊĠĠĠ Ġprivate Ġval Ġtarget Element With Title : ĠElement Ġ= ĊĠĠĠĠĠĠĠ ĠJ soup . parse ( TARGET _ HTML _ WITH _ TITLE , Ġ"", ĠParser . html Parser ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. select First (" p ") ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` verify Ġlink Ġare Ġfound Ġcorrectly `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpected Links Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" https :// www . il post . it / 2 0 2 1 / 0 3 / 1 1 / v acc ino - cor onav irus - john son - john son - autor izz ato - un ione - e urope a /", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" https :// www . a ifa . gov . it / web / guest /-/ a ifa - appro va - il - v acc ino - jan ssen " ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġp Ġ= Ġtarget Element . to Paragraph With Links ( null ) ĊĠĠĠĠĠĠĠ Ġval Ġlinks Ġ: ĠArray < String > Ġ= Ġp . filter Ġ{ Ġit . link Ġ!= Ġnull Ġ}. map NotNull { Ġit . link Ġ}. to Typed Array () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( p ). has Size ( 5 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( links ). has Size ( 2 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( links ). contains All (* expected Links ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` verify Ġtext Ġwithout Ġlinks Ġare Ġparsed Ġcorrectly `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġp Ġ= Ġtarget Element No Links . to Paragraph With Links ( null ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( p ). has Size ( 1 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( p . all Ġ{ Ġit . link Ġ== Ġnull Ġ}). isTrue () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` verify Ġtext Ġwith Ġtitle Ġand Ġlinks Ġare Ġparsed Ġcorrectly `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġp Ġ= Ġtarget Element With Title . to Paragraph With Links ( TITLE ) ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Links Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" https :// www . jan ssen . com / it ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" https :// www . bid mc . org /", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" https :// www . il post . it / 2 0 2 0 / 1 1 / 2 0 / v acc ino - cor onav irus - mr na - modern a - pf izer - b ion tech /" ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlinks Ġ: ĠArray < String > Ġ= Ġp . filter Ġ{ Ġit . link Ġ!= Ġnull Ġ}. map NotNull { Ġit . link Ġ}. to Typed Array () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( p . first (). caption ). does Not Contain ( TITLE ) ĊĠĠĠĠĠĠĠ ĠassertThat ( p ). has Size ( 7 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( links ). has Size ( 3 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( links ). contains All (* expected Links ) ĊĠĠĠ Ġ} Ċ }