@v  java/lang/Object()Vjava/io/ByteArrayOutputStream   re/forestier/edu/UnitTests outContentLjava/io/ByteArrayOutputStream;   errContent  java/lang/SystemoutLjava/io/PrintStream;   originalOut  err ! originalErr#java/io/PrintStream "% &(Ljava/io/OutputStream;)V ( )*setOut(Ljava/io/PrintStream;)V , -*setErr/re/forestier/edu/rpg/Player1Florian3Grognak le barbare 567 89re/forestier/edu/rpg/Jobs ADVENTURERLre/forestier/edu/rpg/Jobs;;java/util/ArrayList : .> ?X(Ljava/lang/String;Ljava/lang/String;Lre/forestier/edu/rpg/Jobs;ILjava/util/ArrayList;)V .A BC getPlayerName()Ljava/lang/String; EFG HIorg/hamcrest/Matchersis*(Ljava/lang/Object;)Lorg/hamcrest/Matcher; KLM NOorg/hamcrest/MatcherAssert assertThat+(Ljava/lang/Object;Lorg/hamcrest/Matcher;)V 5Q R9DWARF 5T U9ARCHER .W XC getAvatarNameZ"java/lang/IllegalArgumentException\ ]^executeJ(Lre/forestier/edu/rpg/Player;)Lorg/junit/jupiter/api/function/Executable; `ab cd org/junit/jupiter/api/Assertions assertThrowsS(Ljava/lang/Class;Lorg/junit/jupiter/api/function/Executable;)Ljava/lang/Throwable; .f gh removeMoney(I)V .j klgetMoney()Ljava/lang/Integer; nop qrjava/lang/IntegervalueOf(I)Ljava/lang/Integer; Et uInot\\ .y zhaddMoney|!re/forestier/edu/rpg/UpdatePlayer { `  assertNotNull(Ljava/lang/Object;)V . haddXp . getXp()I . getLevel .  inventoryLjava/util/ArrayList; : size .  abilitiesLjava/util/HashMap;  re/forestier/edu/rpg/AbilityATKLre/forestier/edu/rpg/Ability;  java/util/HashMapget&(Ljava/lang/Object;)Ljava/lang/Object; n intValue ` assertNotEquals(II)V ` (Ljava/lang/Integer;I)V CtoString `  assertEquals'(Ljava/lang/Object;Ljava/lang/Object;)V . Y(Ljava/lang/String;Ljava/lang/String;Lre/forestier/edu/rpg/Jobs;ILjava/util/ArrayList;I)V . hhurt {  majFinDeTour (Lre/forestier/edu/rpg/Player;)VLe joueur est KO !   Cjava/lang/Stringtrim . hheal . getCurrentHealthPoints . getMaxHealthPoints Holy Elixir : add(Ljava/lang/Object;)Z Magic Bow ` re/forestier/edu/Main re/forestier/edu/lib/Natural  q!(I)Lre/forestier/edu/lib/Natural; toInt ]-()Lorg/junit/jupiter/api/function/Executable; l toInteger n equals `  assertTrue(Z)V q3(Ljava/lang/Integer;)Lre/forestier/edu/lib/Natural; !(Lre/forestier/edu/lib/Natural;)V  substract 0 `  assertFalse     compareTo!(Lre/forestier/edu/lib/Natural;)I CodeLineNumberTableLocalVariableTablethisLre/forestier/edu/UnitTests; setUpStreamsRuntimeVisibleAnnotations"Lorg/junit/jupiter/api/BeforeEach;testPlayerNamePlayerLre/forestier/edu/rpg/Player;Lorg/junit/jupiter/api/Test;#Lorg/junit/jupiter/api/DisplayName;value Sample testtestPlayerConstructorpConstructor PlayertestRemoveMoneytestHealAndHurt Heal and hurt testAddMoneytestUpdatePlayer#Lre/forestier/edu/rpg/UpdatePlayer;Construcor UpdatePlayertestRetrieveLevel tailleinvIatkex & lvltestMajFinTourinvLocalVariableTypeTable)Ljava/util/ArrayList;majDeFinDeTourtestMainmLre/forestier/edu/Main;Main testNaturalnLre/forestier/edu/lib/Natural; Natural TestsrestoreStreams!Lorg/junit/jupiter/api/AfterEach;lambda$testNatural$9 Exceptions=java/lang/Throwablelambda$testNatural$8lambda$testNatural$7lambda$testNatural$6lambda$testNatural$5lambda$testNatural$4lambda$testNatural$3lambda$testHealAndHurt$2lambda$testHealAndHurt$1lambda$testRemoveMoney$0 SourceFileUnitTests.javaBootstrapMethodsK LMN OP"java/lang/invoke/LambdaMetafactory metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;S T FV W EY Z D\ ] C_ ` Bb c Ae f @h i ?k l >n o : InnerClassesr%java/lang/invoke/MethodHandles$Lookuptjava/lang/invoke/MethodHandlesLookup! ! c)**Y *Y **! ) O"Y* $'"Y*$+"#$  a%.Y024d:Y<=L+@0DJ)*$,% s y.Y024d:Y<=L+@0DJ.Y02Pd:Y<=L+@0DJ.Y02Sd:Y<=L+@0DJ+V2DJ"23$4<5H6`7l8x9yas ^.Y024d:Y<=LY+[_W+2e+i2mDJ+imsJ+2e+imDJ">@$A*B9CIDOE]F^Fsg  q1.Y024d:Y<=LY+v_WY+w_WLM$N0Q1s!" o/.Y024d:Y<=L+2x+imDJVWX.Y/sz# I {Y}L+~^_ ` $s%& L.Y024d:Y<=L++mmDJ+mmDJ++mmDJ++mmDJ++mmDJ+d+mmDJ.Y024d:Y<=L+>+ +n6++mmDJ++mmDJ++mmDJ+6+mmDJ++nnegh.i?jEkVl\mmnsopqstuxyz{|} ~#49K*L4'(y)(s*+ fF.Y024d:Y< L+ +* ¸+++ʸmmDJ+d++++ʸm mDJ+ ++ʸm+͸mDJ.Y02Pd:Y< L+ ++ʸmmDJ.Y02Pd:Y< L+++ʸmmDJ:YCGX^bgk} '-1B\bfw28<E F%! :,-  :,.s/0 I YL+~  12s34 YL+~~+L+Y_Wm+Y_WmL+Y_WY_W++Y_W++Y_W++++++m+++++Y _W~  (3ALT\grz56s78 A*'*+ 9 : " W;< > $ ;< ? ! ;< @ W;< A " mW;< B ! nW;< C W;< D 0*N ;< E 0*DZM ;< F 2*ȶe@ ;<GHIf JQRQJQUQJQXQJQ[QJQ^QJQaQJQdQJQgQJQjQJQmQp qsu