package Ġcom . pe ter t ackage . kotlin options . assertions Ċ Ċ import Ġcom . pe ter t ackage . kotlin options . None Ċ import Ġcom . pe ter t ackage . kotlin options . Option Ċ import Ġcom . pe ter t ackage . kotlin options . option Of Ċ import Ġorg . junit . Test Ċ import Ġkotlin . test . assert Fails With Ċ Ċ class ĠOption Assertions Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` is Some Ġpasses Ġwhen ĠSome `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĊĠĠĠĠĠĠĠ ĠassertThat ( some ). is Some () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` is Some Ġfails Ġwhen ĠNone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertThat ( None ). is Some () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected : Ġ< Some > Ġbut Ġwas : Ġ< None >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` is None Ġpasses Ġwhen ĠNone `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertThat ( None ). is None () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` is None Ġfails Ġwhen ĠSome `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertThat ( some ). is None () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected : Ġ< None > Ġbut Ġwas : Ġ< Some >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` hasValue Ġpasses Ġwhen Ġvalue Ġequals `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĊĠĠĠĠĠĠĠ ĠassertThat ( some ). hasValue (" abc ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` hasValue Ġfails Ġwhen Ġvalue Ġnot Ġequals `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertThat ( some ). hasValue (" xyz ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected Ġvalue : Ġ< xyz > Ġbut Ġwas : Ġ< abc >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` hasValue Ġfails Ġwhen ĠNone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġnone : ĠOption < *> Ġ= ĠNone ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertThat ( none ). hasValue (" does Ġnot Ġmatter ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected : Ġ< Some > Ġbut Ġwas : Ġ< None >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` hasValue Ġpasses Ġwhen Ġvalue Ġmatches Ġpredicate `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĠĠĠĠĠĠĠ Ġval Ġpredicate : Ġ( String ) Ġ-> ĠBoolean Ġ= Ġ{ Ġtrue Ġ} ĊĊĠĠĠĠĠĠĠ ĠassertThat ( some ). hasValue ( predicate ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` hasValue Ġfails Ġwhen Ġvalue Ġdoes Ġnot Ġmatch Ġpredicate `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĠĠĠĠĠĠĠ Ġval Ġpredicate : Ġ( String ) Ġ-> ĠBoolean Ġ= Ġ{ Ġfalse Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertThat ( some ). hasValue ( predicate ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected Ġpredicate Ġdid Ġnot Ġmatch : Ġ< abc >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` hasValue Ġwith Ġpredicate Ġfails Ġwhen ĠNone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġnone : ĠOption < *> Ġ= ĠNone ĊĠĠĠĠĠĠĠ Ġval Ġpredicate : Ġ( String ) Ġ-> ĠBoolean Ġ= Ġ{ Ġtrue Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertThat ( none ). hasValue ( predicate ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected : Ġ< Some > Ġbut Ġwas : Ġ< None >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/* ĊĠĠĠĠ Ġ* ĠTests Ġfor ĠExtension Ġmethods ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assertIs Some Ġpasses Ġwhen ĠSome `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĊĠĠĠĠĠĠĠ Ġsome . assertIs Some () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assertIs Some Ġfails Ġwhen ĠNone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠNone . assertIs Some () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected : Ġ< Some > Ġbut Ġwas : Ġ< None >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assertIs None Ġpasses Ġwhen ĠNone `() Ġ{ ĊĠĠĠĠĠĠĠ ĠNone . assertIs None () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assertIs None Ġfails Ġwhen ĠSome `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsome . assertIs None () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected : Ġ< None > Ġbut Ġwas : Ġ< Some >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assert HasValue Ġpasses Ġwhen Ġvalue Ġequals `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĊĠĠĠĠĠĠĠ Ġsome . assert HasValue (" abc ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assert HasValue Ġfails Ġwhen Ġvalue Ġnot Ġequals `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsome . assert HasValue (" xyz ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected Ġvalue : Ġ< xyz > Ġbut Ġwas : Ġ< abc >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assert HasValue Ġfails Ġwhen ĠNone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġnone : ĠOption < *> Ġ= ĠNone ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnone . assert HasValue (" does Ġnot Ġmatter ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected : Ġ< Some > Ġbut Ġwas : Ġ< None >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assert HasValue Ġpasses Ġwhen Ġvalue Ġmatches Ġpredicate `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĠĠĠĠĠĠĠ Ġval Ġpredicate : Ġ( String ) Ġ-> ĠBoolean Ġ= Ġ{ Ġtrue Ġ} ĊĊĠĠĠĠĠĠĠ Ġsome . assert HasValue ( predicate ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assert HasValue Ġfails Ġwhen Ġvalue Ġdoes Ġnot Ġmatch Ġpredicate `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsome Ġ= Ġoption Of (" abc ") ĊĠĠĠĠĠĠĠ Ġval Ġpredicate : Ġ( String ) Ġ-> ĠBoolean Ġ= Ġ{ Ġfalse Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsome . assert HasValue ( predicate ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected Ġpredicate Ġdid Ġnot Ġmatch : Ġ< abc >") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` assert HasValue Ġwith Ġpredicate Ġfails Ġwhen ĠNone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġnone : ĠOption < *> Ġ= ĠNone ĊĠĠĠĠĠĠĠ Ġval Ġpredicate : Ġ( String ) Ġ-> ĠBoolean Ġ= Ġ{ Ġtrue Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġactual Exception Ġ= Ġassert Fails With ( AssertionError :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnone . assert HasValue ( predicate ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġassert ( actual Exception . message Ġ== Ġ" Expected : Ġ< Some > Ġbut Ġwas : Ġ< None >") ĊĠĠĠ Ġ} Ċ } Ċ