package Ġorg . kode in . di Ċ Ċ import Ġorg . kode in . di . test . Fix Method Order Ċ import Ġorg . kode in . di . test . Method Sort ers Ċ import Ġorg . kode in . di . test . Person Ċ import Ġkotlin . test .* Ċ Ċ @ Fix Method Order ( Method Sort ers . NAME _ ASC ENDING ) Ċ class ĠTests _ 1 2 _ Trigger Ġ{ ĊĊĠĠĠ Ġclass ĠT 0 0 ( override Ġval Ġdi : ĠDI ): ĠD IA ware Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġdi Trigger Ġ= ĠD IT rigger () ĊĠĠĠĠĠĠĠ Ġval Ġnew Person : Ġ() Ġ-> ĠPerson Ġby Ġprovider () ĊĠĠĠĠĠĠĠ Ġval Ġsal om on : ĠPerson Ġby Ġinstance ( tag Ġ= Ġ" named ") ĊĠĠĠĠĠĠĠ Ġval Ġp Factory : Ġ( String ) Ġ-> ĠPerson Ġby Ġfactory ( tag Ġ= Ġ" factory ") ĊĠĠĠĠĠĠĠ Ġval Ġp Provider : Ġ() Ġ-> ĠPerson Ġby Ġprovider ( tag Ġ= Ġ" factory ", Ġarg Ġ= Ġ" provided ") ĊĠĠĠĠĠĠĠ Ġval Ġinstance : ĠPerson Ġby Ġinstance ( tag Ġ= Ġ" factory ", Ġarg Ġ= Ġ" re ified ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest _ 0 0 _ Simple Trigger () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdi Ġ= ĠDI Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind < Person >() Ġwith Ġprovider Ġ{ ĠPerson () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind < Person >( tag Ġ= Ġ" named ") Ġwith Ġsingleton Ġ{ ĠPerson (" Sal om on ") Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind < Person >( tag Ġ= Ġ" factory ") Ġwith Ġfactory Ġ{ Ġname : ĠString Ġ-> ĠPerson ( name ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġinjected Ġ= ĠT 0 0 ( di ) ĊĊĠĠĠĠĠĠĠ Ġinjected . di Trigger . trigger () ĊĠĠĠĠĠĠĠ Ġassert Not Same ( inject ed . new Person (), Ġinjected . new Person ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" Sal om on ", Ġinjected . sal om on . name ) ĊĠĠĠĠĠĠĠ ĠassertSame ( inject ed . sal om on , Ġinjected . sal om on ) ĊĠĠĠĠĠĠĠ Ġassert Not Same ( inject ed . p Factory (" L ail a "), Ġinjected . p Factory (" L ail a ")) ĊĠĠĠĠĠĠĠ ĠassertEquals (" L ail a ", Ġinjected . p Factory (" L ail a "). name ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" provided ", Ġinjected . p Provider (). name ) ĊĠĠĠĠĠĠĠ Ġassert Not Same ( inject ed . p Provider (), Ġinjected . p Provider ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" re ified ", Ġinjected . instance . name ) ĊĠĠĠĠĠĠĠ ĠassertSame ( inject ed . instance , Ġinjected . instance ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠT 0 1 ( override Ġval Ġdi : ĠDI ): ĠD IA ware Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġdi Trigger Ġ= ĠD IT rigger () ĊĠĠĠĠĠĠĠ Ġ@ Suppress (" unused ") ĊĠĠĠĠĠĠĠ Ġval Ġperson : ĠPerson Ġby Ġinstance () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest _ 0 1 _ CreatedAt Trigger () Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġcreated Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġdi Ġ= ĠDI Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind < Person >() Ġwith Ġsingleton Ġ{ Ġcreated Ġ= Ġtrue ; ĠPerson () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġcontainer Ġ= ĠT 0 1 ( di ) ĊĊĠĠĠĠĠĠĠ ĠassertFalse ( created ) ĊĠĠĠĠĠĠĠ Ġcontainer . di Trigger . trigger () ĊĠĠĠĠĠĠĠ ĠassertTrue ( created ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest _ 0 2 _ Simple Binding _ Simple Trigger () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdi Ġ= ĠDI Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind Provider Ġ{ ĠPerson () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind Singleton ( tag Ġ= Ġ" named ") Ġ{ ĠPerson (" Sal om on ") Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind Factory ( tag Ġ= Ġ" factory ") Ġ{ Ġname : ĠString Ġ-> ĠPerson ( name ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġinjected Ġ= ĠT 0 0 ( di ) ĊĊĠĠĠĠĠĠĠ Ġinjected . di Trigger . trigger () ĊĠĠĠĠĠĠĠ Ġassert Not Same ( inject ed . new Person (), Ġinjected . new Person ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" Sal om on ", Ġinjected . sal om on . name ) ĊĠĠĠĠĠĠĠ ĠassertSame ( inject ed . sal om on , Ġinjected . sal om on ) ĊĠĠĠĠĠĠĠ Ġassert Not Same ( inject ed . p Factory (" L ail a "), Ġinjected . p Factory (" L ail a ")) ĊĠĠĠĠĠĠĠ ĠassertEquals (" L ail a ", Ġinjected . p Factory (" L ail a "). name ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" provided ", Ġinjected . p Provider (). name ) ĊĠĠĠĠĠĠĠ Ġassert Not Same ( inject ed . p Provider (), Ġinjected . p Provider ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" re ified ", Ġinjected . instance . name ) ĊĠĠĠĠĠĠĠ ĠassertSame ( inject ed . instance , Ġinjected . instance ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest _ 0 3 _ Simple Binding _ CreatedAt Trigger () Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġcreated Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġdi Ġ= ĠDI Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind Singleton Ġ{ Ġcreated Ġ= Ġtrue ; ĠPerson () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġcontainer Ġ= ĠT 0 1 ( di ) ĊĊĠĠĠĠĠĠĠ ĠassertFalse ( created ) ĊĠĠĠĠĠĠĠ Ġcontainer . di Trigger . trigger () ĊĠĠĠĠĠĠĠ ĠassertTrue ( created ) ĊĠĠĠ Ġ} ĊĊ Ċ } Ċ