package Ġj ces 1 2 0 9 . vu . page . boards . view čĊč Ċ import Ġj ces 1 2 0 9 . vu . wait č Ċ import Ġorg . openqa . selenium . By č Ċ import Ġorg . openqa . selenium . Keys č Ċ import Ġorg . openqa . selenium . WebDriver č Ċ import Ġorg . openqa . selenium . WebElement č Ċ import Ġorg . openqa . selenium . inter actions . Actions č Ċ import Ġorg . openqa . selenium . support . ui . Expected Condition č Ċ import Ġorg . openqa . selenium . support . ui . Expected Conditions č Ċ import Ġorg . openqa . selenium . support . ui . Expected Conditions .* č Ċ import Ġjava . net . URI čĊč Ċ abstract Ġclass ĠScr um Back log Page ( čĊĠĠĠ Ġdriver : ĠWebDriver , čĊĠĠĠ Ġuri : ĠURI č Ċ ) Ġ: ĠBoard Page ( čĊĠĠĠ Ġdriver Ġ= Ġdriver , čĊĠĠĠ Ġuri Ġ= Ġuri č Ċ ) Ġ{ čĊĠĠĠ Ġprivate Ġval Ġissue Locator Ġ= ĠBy . className (" gh x - summary ") čĊĠĠĠ Ġprivate Ġval Ġstart Sprint Locator Ġ= ĠBy . className (" js - sprint - start ") čĊčĊĠĠĠ Ġoverride Ġfun ĠgetType Label (): ĠString Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn Ġ" Back log " čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġprivate Ġfun Ġs print Container () Ġ= Ġdriver čĊĠĠĠĠĠĠĠ Ġ. find Elements ( By . className (" js - sprint - container ")) čĊĠĠĠĠĠĠĠ Ġ. last () čĊčĊĠĠĠ Ġprivate Ġfun Ġs print Issues Number () Ġ= Ġs print Container () čĊĠĠĠĠĠĠĠ Ġ. find Elements ( issue Locator ) čĊĠĠĠĠĠĠĠ Ġ. size čĊčĊĠĠĠ Ġprivate Ġfun Ġback log Container () Ġ= Ġdriver čĊĠĠĠĠĠĠĠ Ġ. findElement ( By . className (" gh x - back log - group ")) čĊčĊĠĠĠ Ġfun Ġback log Issues Number (): ĠInt Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn Ġback log Container () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. find Elements ( issue Locator ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. size čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġfun Ġcreate Sprint (): ĠString Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġs print Container Locator Ġ= ĠBy . className (" js - sprint - header ") čĊčĊĠĠĠĠĠĠĠ Ġval Ġcreate Sprint Button Ġ= Ġdriver . wait ( čĊĠĠĠĠĠĠĠĠĠĠĠ Ġelement ToBe Clickable ( By . className (" js - add - sprint ")) čĊĠĠĠĠĠĠĠ Ġ) čĊčĊĠĠĠĠĠĠĠ Ġval Ġs prints Number Before Create Ġ= Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. find Elements ( sprint Container Locator ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. size čĊčĊĠĠĠĠĠĠĠ Ġcreate Sprint Button . click () čĊčĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( Expected Condition Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdriver . find Elements ( sprint Container Locator ). size Ġ> Ġs prints Number Before Create čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) čĊčĊĠĠĠĠĠĠĠ Ġreturn Ġdriver . find Elements ( sprint Container Locator ). last (). getAttribute (" data - sprint - id ") čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġfun Ġmove Issue ToS print (): ĠScr um Back log Page Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġs print Issues Number Before Move Ġ= Ġs print Issues Number () čĊčĊĠĠĠĠĠĠĠ Ġval Ġissue From Back log Ġ= Ġback log Container () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. findElement ( issue Locator ) čĊčĊĠĠĠĠĠĠĠ ĠActions ( driver ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. drag And Drop ( issue From Back log , Ġs print Container ()) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. perform () čĊčĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( Expected Conditions . in visibility Of ( issue From Back log )) čĊčĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( Expected Condition Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġs print Issues Number () Ġ> Ġs print Issues Number Before Move čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) čĊčĊĠĠĠĠĠĠĠ Ġreturn Ġthis čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġfun Ġis Start Sprint Enabled (): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn Ġenabled Start Sprint Button (). isNotEmpty () čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġprivate Ġfun Ġenabled Start Sprint Button (): ĠList < WebElement > Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. find Elements ( start Sprint Locator ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . getAttribute (" aria - disabled ") Ġ== Ġnull čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġfun Ġopen Start Sprint Pop Up (): ĠScr um Back log Page Ġ{ čĊĠĠĠĠĠĠĠ Ġenabled Start Sprint Button () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. last () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. click () čĊčĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( visibility Of Element Loc ated ( By . id (" gh x - dialog - start - sprint "))) čĊčĊĠĠĠĠĠĠĠ Ġreturn Ġthis čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġfun Ġsubmit Start Sprint () Ġ{ čĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( element ToBe Clickable ( By . className (" button - panel - button "))) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. click () čĊčĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( visibility Of Element Loc ated ( By . className (" gh x - column - header - group "))) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġfun Ġinline Create Issue ( value : ĠString ) Ġ{ čĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( element ToBe Clickable ( By . css Selector (". i ic - trigger Ġ> Ġbutton "))) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. click () čĊčĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( visibility Of Element Loc ated ( By . className (" i ic - widget __ summary "))) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. click () čĊčĊĠĠĠĠĠĠĠ ĠActions ( driver ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. send Keys ( value ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. send Keys ( Keys . ENTER ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. perform () čĊčĊĠĠĠĠĠĠĠ Ġdriver čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. wait ( čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpresence Of All Elements Loc ated By ( By . css Selector (". gh x - summary [ title ='$ value '], Ġ. gh x - summary [ data - tooltip ='$ value '] ")), čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvisibility Of Element Loc ated ( By . xpath (" //* [@ name =' summary ' Ġand Ġnot ( text ()) ] ")), čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġin visibility Of Element Loc ated ( By . css Selector (". a ui - spinner , Ġ. jira - page - ad g - spinner - svg ")) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) čĊĠĠĠ Ġ} č Ċ } čĊ