/* Ċ Ġ* ĠCopyright Ġ 2 0 1 2 - 2 0 1 8 Ġthe Ġoriginal Ġauthor Ġor Ġauthors . Ċ Ġ* Ċ Ġ* Ġ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 . nex ial . core . model Ċ Ċ import Ġorg . nex ial . core . N ex ial Const . G SON _ COMPRESSED Ċ import Ġorg . nex ial . core . model . Execution Event .* Ċ Ċ open Ġclass ĠN ex ial Event ( val ĠeventName : ĠString , Ġval ĠstartTime : ĠLong ) Ġ{ ĊĠĠĠ Ġval Ġid : ĠString Ġ= ĠUtils . eventId ĊĠĠĠ Ġval ĠendTime : ĠLong Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠ Ġfun Ġjson (): ĠString Ġ= ĠG SON _ COMPRESSED . toJson ( this ) Ċ } Ċ Ċ open Ġclass ĠN ex ial Complete Event ( eventName : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime : ĠLong , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsteps : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġexecuted : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpass : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfail : ĠInt ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Event ( eventName Ġ= ĠeventName , ĠstartTime Ġ= ĠstartTime ) Ċ Ċ class ĠN ex ial Execution Complete Event ( startTime : ĠLong , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsteps : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecuted : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpass : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfail : ĠInt ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Complete Event ( eventName Ġ= ĠExecution Complete . eventName , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠstartTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsteps Ġ= Ġsteps , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecuted Ġ= Ġexecuted , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpass Ġ= Ġpass , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfail Ġ= Ġfail ) Ġ{ ĊĊĠĠĠ Ġconstructor ( summary : ĠExecution Summary ) Ġ: Ġthis ( summary . startTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . total Steps , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . executed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . pass Count , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . fail Count ) Ċ } Ċ Ċ class ĠN ex ial Script Complete Event ( val Ġscript : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime : ĠLong , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsteps : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecuted : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpass : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfail : ĠInt ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Complete Event ( eventName Ġ= ĠScript Complete . eventName , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠstartTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsteps Ġ= Ġsteps , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecuted Ġ= Ġexecuted , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpass Ġ= Ġpass , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfail Ġ= Ġfail ) Ġ{ ĊĊĠĠĠ Ġconstructor ( script : ĠString , Ġsummary : ĠExecution Summary ) Ġ: ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis ( script , Ġsummary . startTime , Ġsummary . total Steps , Ġsummary . executed , Ġsummary . pass Count , Ġsummary . fail Count ) Ċ } Ċ Ċ class ĠN ex ial Iteration Complete Event ( val Ġscript : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġiteration : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime : ĠLong , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsteps : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecuted : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpass : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfail : ĠInt ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Complete Event ( eventName Ġ= ĠIteration Complete . eventName , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠstartTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsteps Ġ= Ġsteps , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecuted Ġ= Ġexecuted , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpass Ġ= Ġpass , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfail Ġ= Ġfail ) Ġ{ ĊĊĠĠĠ Ġconstructor ( script : ĠString , Ġiteration : ĠInt , Ġsummary : ĠExecution Summary ) Ġ: ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis ( script , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġiteration , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . startTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . total Steps , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . executed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . pass Count , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . fail Count ) Ċ } Ċ Ċ class ĠN ex ial Scenario Complete Event ( val Ġscript : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscenario : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime : ĠLong , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsteps : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecuted : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpass : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfail : ĠInt ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Complete Event ( eventName Ġ= ĠScenario Complete . eventName , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠstartTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsteps Ġ= Ġsteps , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecuted Ġ= Ġexecuted , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpass Ġ= Ġpass , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfail Ġ= Ġfail ) Ġ{ ĊĊĠĠĠ Ġconstructor ( summary : ĠExecution Summary ) Ġ: Ġthis ( summary . test Script . absolute Path , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . startTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . total Steps , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . executed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . pass Count , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsummary . fail Count ) Ċ } Ċ Ċ /** Ċ Ġ* Ġone - and - done Ġevent . Ġafter Ġthis , Ġthe Ġexecution Ġwill Ġstop Ċ Ġ* Ġ@ property Ġargs ĠList < String > Ċ Ġ* Ġ@ property Ġerror ĠString Ċ Ġ* Ġ@ constructor Ċ Ġ*/ Ċ class ĠN ex ial Cmd Error Event ( val Ġargs : ĠList < String >, Ġval Ġerror : ĠString ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Event ( eventName Ġ= ĠError Occurred . eventName , ĠstartTime Ġ= ĠSystem . currentTimeMillis ()) Ċ Ċ /** Ċ Ġ* Ġwhen Ġa Ġfailure Ġoccurred , Ġregardless Ġof Ġwhether Ġthe Ġexecution Ġwill Ġcontinue Ċ Ġ* Ġ@ property Ġerror ĠString Ċ Ġ* Ġ@ property Ġexception ĠThrowable ? Ċ Ġ* Ġ@ constructor Ċ Ġ*/ Ċ class ĠN ex ial Fail Event ( val Ġerror : ĠString ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Event ( eventName Ġ= ĠError Occurred . eventName , ĠstartTime Ġ= ĠSystem . currentTimeMillis ()) Ġ{ ĊĊĠĠĠ Ġvar Ġexception : ĠThrowable ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġcommand Type : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġcommand : ĠString ? Ġ= Ġnull Ċ } Ċ Ċ class ĠN ex ial Url Inv oked Event ( val Ġbrowser : ĠString , Ġval Ġurl : ĠString ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Event ( eventName Ġ= ĠWeb Open . eventName , ĠstartTime Ġ= ĠSystem . currentTimeMillis ()) Ċ Ċ class ĠBrowser Complete Event ( val Ġbrowser : ĠString ) Ġ: ĊĠĠĠĠĠĠĠ ĠN ex ial Event ( eventName Ġ= ĠBrowser Complete . eventName , ĠstartTime Ġ= ĠSystem . currentTimeMillis ()) Ċ