package Ġcom . github . mv ys ny . k ari but esting . mock http Ċ Ċ import Ġcom . github . mv ys ny . dyn atest . Dyn a Test Ċ import Ġcom . github . mv ys ny . dyn atest . expect List Ċ import Ġkotlin . test . expect Ċ Ċ /** Ċ Ġ* Ġ@ author Ġm avi Ċ Ġ*/ Ċ class ĠMock Request Test Ġ: ĠDyn a Test ({ ĊĠĠĠ Ġlateinit Ġvar Ġrequest : ĠMock Request ĊĠĠĠ ĠbeforeEach Ġ{ Ġrequest Ġ= ĠMock Request ( Mock Http Session . create ( Mock Context ())) Ġ} ĊĊĠĠĠ Ġtest (" attributes ") Ġ{ ĊĠĠĠĠĠĠĠ Ġexpect ( null ) Ġ{ Ġrequest . getAttribute (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . setAttribute (" foo ", Ġ" bar ") ĊĠĠĠĠĠĠĠ Ġexpect (" bar ") Ġ{ Ġrequest . getAttribute (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . setAttribute (" foo ", Ġnull ) ĊĠĠĠĠĠĠĠ Ġexpect ( null ) Ġ{ Ġrequest . getAttribute (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . setAttribute (" foo ", Ġ" bar ") ĊĠĠĠĠĠĠĠ Ġexpect (" bar ") Ġ{ Ġrequest . getAttribute (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . removeAttribute (" foo ") ĊĠĠĠĠĠĠĠ Ġexpect ( null ) Ġ{ Ġrequest . getAttribute (" foo ") Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġtest (" parameters ") Ġ{ ĊĠĠĠĠĠĠĠ Ġexpect ( null ) Ġ{ Ġrequest . getParameter (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġexpect List () Ġ{ Ġrequest . parameter Names . toList () Ġ} ĊĠĠĠĠĠĠĠ Ġexpect ( null ) Ġ{ Ġrequest . getParameter Values (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . setParameter (" foo ", Ġ" bar ") ĊĠĠĠĠĠĠĠ Ġexpect (" bar ") Ġ{ Ġrequest . getParameter (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġexpect List (" foo ") Ġ{ Ġrequest . parameter Names . toList () Ġ} ĊĠĠĠĠĠĠĠ Ġexpect List (" bar ") Ġ{ Ġrequest . getParameter Values (" foo ") !!. toList () Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . parameters [" foo "] Ġ= ĠarrayOf (" bar ", Ġ" baz ") ĊĠĠĠĠĠĠĠ Ġexpect (" bar ") Ġ{ Ġrequest . getParameter (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġexpect List (" foo ") Ġ{ Ġrequest . parameter Names . toList () Ġ} ĊĠĠĠĠĠĠĠ Ġexpect List (" bar ", Ġ" baz ") Ġ{ Ġrequest . getParameter Values (" foo ") !!. toList () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġtest (" getSession ( false ) Ġreturns Ġthe Ġold Ġinvalid Ġsession ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsession Ġ= Ġrequest . session Ġas ĠMock Http Session ĊĠĠĠĠĠĠĠ Ġexpect ( true ) Ġ{ Ġsession . isValid Ġ} ĊĠĠĠĠĠĠĠ Ġsession . setAttribute (" foo ", Ġ" bar ") ĊĠĠĠĠĠĠĠ Ġsession . invalidate () ĊĠĠĠĠĠĠĠ Ġexpect ( session ) Ġ{ Ġrequest . getSession ( false ) Ġ} ĊĠĠĠĠĠĠĠ Ġexpect ( false ) Ġ{ Ġsession . isValid Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġtest (" getSession ( true ) Ġcreates Ġa Ġnew Ġsession Ġwhen Ġinvalid ated ") Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġsession Ġ= Ġrequest . session Ġas ĠMock Http Session ĊĠĠĠĠĠĠĠ Ġexpect ( true ) Ġ{ Ġsession . isValid Ġ} ĊĠĠĠĠĠĠĠ Ġsession . setAttribute (" foo ", Ġ" bar ") ĊĠĠĠĠĠĠĠ Ġsession . invalidate () ĊĠĠĠĠĠĠĠ Ġexpect ( false ) Ġ{ Ġsession . isValid Ġ} ĊĠĠĠĠĠĠĠ Ġexpect ( true ) Ġ{ Ġsession Ġ!= Ġrequest . getSession ( true ) Ġ} ĊĠĠĠĠĠĠĠ Ġsession Ġ= Ġrequest . getSession ( true ) Ġas ĠMock Http Session ĊĠĠĠĠĠĠĠ Ġexpect ( true ) Ġ{ Ġsession . isValid Ġ} ĊĠĠĠĠĠĠĠ Ġexpect ( null ) Ġ{ Ġsession . getAttribute (" foo ") Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġtest (" getSession () Ġcreates Ġa Ġnew Ġsession Ġwhen Ġinvalid ated ") Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġsession Ġ= Ġrequest . session Ġas ĠMock Http Session ĊĠĠĠĠĠĠĠ Ġexpect ( true ) Ġ{ Ġsession . isValid Ġ} ĊĠĠĠĠĠĠĠ Ġsession . setAttribute (" foo ", Ġ" bar ") ĊĠĠĠĠĠĠĠ Ġsession . invalidate () ĊĠĠĠĠĠĠĠ Ġexpect ( false ) Ġ{ Ġsession . isValid Ġ} ĊĠĠĠĠĠĠĠ Ġexpect ( true ) Ġ{ Ġsession Ġ!= Ġrequest . session Ġ} ĊĠĠĠĠĠĠĠ Ġsession Ġ= Ġrequest . session Ġas ĠMock Http Session ĊĠĠĠĠĠĠĠ Ġexpect ( true ) Ġ{ Ġsession . isValid Ġ} ĊĠĠĠĠĠĠĠ Ġexpect ( null ) Ġ{ Ġsession . getAttribute (" foo ") Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġtest (" principal ") Ġ{ ĊĠĠĠĠĠĠĠ Ġexpect ( null ) Ġ{ Ġrequest . user Principal Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . user Principal Int Ġ= ĠMock Principal (" foo ") ĊĠĠĠĠĠĠĠ Ġexpect ( Mock Principal (" foo ")) Ġ{ Ġrequest . user Principal Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġtest (" is User In Role ") Ġ{ ĊĠĠĠĠĠĠĠ Ġexpect ( false ) Ġ{ Ġrequest . is User In Role (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . user Principal Int Ġ= ĠMock Principal (" foo ") ĊĠĠĠĠĠĠĠ Ġexpect ( false ) Ġ{ Ġrequest . is User In Role (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . user Principal Int Ġ= ĠMock Principal (" foo ", ĠlistOf (" foo ")) ĊĠĠĠĠĠĠĠ Ġexpect ( false ) Ġ{ Ġrequest . is User In Role (" foo ") Ġ} ĊĠĠĠĠĠĠĠ Ġrequest . is User In Role Ġ= Ġ{ Ġp , Ġr Ġ-> Ġ( p Ġas ĠMock Principal ). is User In Role ( r ) Ġ} ĊĠĠĠĠĠĠĠ Ġexpect ( true ) Ġ{ Ġrequest . is User In Role (" foo ") Ġ} ĊĠĠĠ Ġ} Ċ }) Ċ