package Ġio . andre wo h ara . aws mock . ssm . v 2 Ċ Ċ import Ġio . andre wo h ara . aws mock . ssm . Mock S sm V 2 Ċ import Ġio . andre wo h ara . aws mock . ssm . backend . Mock S sm Backend Ċ import Ġio . kot est . assertions . throw ables . should Throw Ċ import Ġio . kot est . matchers . shouldBe Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġsoftware . amazon . aw ssdk . services . ssm . model . Get Parameter Response Ċ import Ġsoftware . amazon . aw ssdk . services . ssm . model . Parameter Ċ import Ġsoftware . amazon . aw ssdk . services . ssm . model . Parameter NotFoundException Ċ import Ġsoftware . amazon . aw ssdk . services . ssm . model . ParameterType Ċ Ċ class ĠMock S sm V 2 Get Parameter Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġbackend Ġ= ĠMock S sm Backend () ĊĠĠĠ Ġprivate Ġval Ġclient Ġ= ĠMock S sm V 2 ( backend ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` get Ġmissing Ġparameter `() Ġ{ ĊĠĠĠĠĠĠĠ Ġshould Throw < Parameter NotFoundException > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient . getParameter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` get Ġstring `() Ġ{ ĊĠĠĠĠĠĠĠ Ġbackend [" foo "] Ġ= Ġ" bar " ĊĊĠĠĠĠĠĠĠ Ġclient . getParameter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . name (" foo ") ĊĠĠĠĠĠĠĠ Ġ} ĠshouldBe ĠGet Parameter Response . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. parameter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠParameter . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. type ( ParameterType . STRING ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. value (" bar ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. version ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. arn (" arn : aws : ssm - mock : ca - central - 1 : 1 1 1 2 2 2 3 3 3 4 4 4 : parameter / foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` get Ġstring Ġat Ġversion Ġ 2 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġbackend [" foo "] Ġ= Ġ" bar " ĊĠĠĠĠĠĠĠ Ġbackend [" foo "] Ġ= Ġ" baz " ĊĊĠĠĠĠĠĠĠ Ġclient . getParameter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . name (" foo ") ĊĠĠĠĠĠĠĠ Ġ} ĠshouldBe ĠGet Parameter Response . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. parameter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠParameter . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. type ( ParameterType . STRING ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. value (" baz ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. version ( 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. arn (" arn : aws : ssm - mock : ca - central - 1 : 1 1 1 2 2 2 3 3 3 4 4 4 : parameter / foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` get Ġstring Ġlist `() Ġ{ ĊĠĠĠĠĠĠĠ Ġbackend [" foo "] Ġ= ĠlistOf (" bar ", Ġ" baz ") ĊĊĠĠĠĠĠĠĠ Ġclient . getParameter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . name (" foo ") ĊĠĠĠĠĠĠĠ Ġ} ĠshouldBe ĠGet Parameter Response . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. parameter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠParameter . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. type ( ParameterType . STRING _ LIST ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. value (" bar , baz ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. version ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. arn (" arn : aws : ssm - mock : ca - central - 1 : 1 1 1 2 2 2 3 3 3 4 4 4 : parameter / foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` get Ġstring Ġwith Ġde cryption `() Ġ{ ĊĠĠĠĠĠĠĠ Ġbackend [" foo "] Ġ= Ġ" bar " ĊĊĠĠĠĠĠĠĠ Ġclient . getParameter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . with De cryption ( true ) ĊĠĠĠĠĠĠĠ Ġ} ĠshouldBe ĠGet Parameter Response . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. parameter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠParameter . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. type ( ParameterType . STRING ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. value (" bar ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. version ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. arn (" arn : aws : ssm - mock : ca - central - 1 : 1 1 1 2 2 2 3 3 3 4 4 4 : parameter / foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` get Ġsecure Ġstring Ġwithout Ġde cryption `() Ġ{ ĊĠĠĠĠĠĠĠ Ġbackend . secure (" foo ", Ġ" bar ") ĊĊĠĠĠĠĠĠĠ Ġclient . getParameter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . name (" foo ") ĊĠĠĠĠĠĠĠ Ġ} ĠshouldBe ĠGet Parameter Response . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. parameter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠParameter . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. type ( ParameterType . SECURE _ STRING ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. value (" default Key ~ bar ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. version ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. arn (" arn : aws : ssm - mock : ca - central - 1 : 1 1 1 2 2 2 3 3 3 4 4 4 : parameter / foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` get Ġsecure Ġstring Ġwith Ġde cryption `() Ġ{ ĊĠĠĠĠĠĠĠ Ġbackend . secure (" foo ", Ġ" bar ") ĊĊĠĠĠĠĠĠĠ Ġclient . getParameter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . with De cryption ( true ) ĊĠĠĠĠĠĠĠ Ġ} ĠshouldBe ĠGet Parameter Response . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. parameter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠParameter . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. name (" foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. type ( ParameterType . SECURE _ STRING ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. value (" bar ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. version ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. arn (" arn : aws : ssm - mock : ca - central - 1 : 1 1 1 2 2 2 3 3 3 4 4 4 : parameter / foo ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} Ċ }