An  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 barbare5 ADVENTURER7java/util/ArrayList 6 .: ;O(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/util/ArrayList;)V .= >? getPlayerName()Ljava/lang/String; ABC DEorg/hamcrest/Matchersis*(Ljava/lang/Object;)Lorg/hamcrest/Matcher; GHI JKorg/hamcrest/MatcherAssert assertThat+(Ljava/lang/Object;Lorg/hamcrest/Matcher;)VMjgn AO PEnotRDWARFTARCHER .V W? getAvatarNameYGroknak le barbare["java/lang/IllegalArgumentException] ^_executeJ(Lre/forestier/edu/rpg/Player;)Lorg/junit/jupiter/api/function/Executable; abc de org/junit/jupiter/api/Assertions assertThrowsS(Ljava/lang/Class;Lorg/junit/jupiter/api/function/Executable;)Ljava/lang/Throwable; .g hi removeMoney(I)V .k lmgetMoney()Ljava/lang/Integer; opq rsjava/lang/IntegervalueOf(I)Ljava/lang/Integer;]] .w xiaddMoneyz!re/forestier/edu/rpg/UpdatePlayer y a} ~ assertNotNull(Ljava/lang/Object;)V . iaddXp . getXp()I . getLevel .  inventoryLjava/util/ArrayList; 6 size .  abilitiesLjava/util/HashMap;ATK  java/util/HashMapget&(Ljava/lang/Object;)Ljava/lang/Object; o intValue a assertNotEquals(II)V a (Ljava/lang/Integer;I)V . P(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/util/ArrayList;I)V . ihurt y  majFinDeTour (Lre/forestier/edu/rpg/Player;)VLe joueur est KO !  ?toString  ?java/lang/Stringtrim a  assertEquals'(Ljava/lang/Object;Ljava/lang/Object;)V . iheal . getCurrentHealthPoints . getMaxHealthPoints Holy Elixir 6 add(Ljava/lang/Object;)Z Magic Bow a re/forestier/edu/Main re/forestier/edu/lib/Natural  r!(I)Lre/forestier/edu/lib/Natural; toInt ^-()Lorg/junit/jupiter/api/function/Executable; m toInteger o equals a  assertTrue(Z)V r3(Ljava/lang/Integer;)Lre/forestier/edu/lib/Natural; !(Lre/forestier/edu/lib/Natural;)V  substract 0 a  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 Exceptions5java/lang/Throwablelambda$testNatural$8lambda$testNatural$7lambda$testNatural$6lambda$testNatural$5lambda$testNatural$4lambda$testNatural$3lambda$testHealAndHurt$2lambda$testHealAndHurt$1lambda$testRemoveMoney$0 SourceFileUnitTests.javaBootstrapMethodsD E >G H =J K <M N ;P Q :S T 9V W 8Y Z 7\ ] 6_ ` 2b cde fg"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; InnerClassesj%java/lang/invoke/MethodHandles$Lookupljava/lang/invoke/MethodHandlesLookup! !c)**Y *Y **! )  O"Y* $'"Y*$+ !"     `$.Y024d6Y89L+<0@F'(#*$   s.Y02Ld6Y89L+<0NF.Y024d6Y89L+<0@F.Y02Qd6Y89L+<0@F.Y02Sd6Y89L+<0@F+UX@F* 01#2:3F4]5i6789  s].Y024d6Y89LZ+\`W+2f+j2n@F+jnNF+2f+jn@F">@#A)B8CHDNE\F] F shp0.Y024d6Y89LZ+t`WZ+u`WLM#N/Q0  sn..Y024d6Y89L+2v+jn@FVWX-Y.  sxI yY{L+|^_ `   sH.Y024d6Y89L++nn@F+nn@F++nn@F++nn@F++nn@F+d+nn@F.Y024d6Y89L+>+ +o6++nn@F++nn@F++nn@F+6+nn@F++onegh-i>jDkUl[mlnropqstuvwxyz{ |} ~16G*H 1 x!  s"#N2.Y024d6Y8 L+ +* +++¸nn@F+d++++¸n n@F+ ++¸n+Ÿn@F.Y02Qd6Y8 L+ ++¸nn@F.Y02Qd6Y8 L+++¸nn@F6Y8M,ȶW.Y02Qd, L+ ++¸nn@F.Y02Sd6Y8 L+ ++¸nn@F.Y024d6Y8 L+ +++¸nn@F,ζW.Y02Sd, L+ ++¸nn@F.Y02Sd,(L+++¸nn@F.Y024d6Y8(L+++б4#27;LRV[_qw{"3LRVg$(1 2 4$% 4$& s'(I YL+|   )* s+,YL+|ظ|+L+Z`Wn+Z`WnL+Z`WZ`W+ض+ظZ`W+ض+ظZ`W++ض+++ض+n++ض+ض+ض+ضZ`W~  (3ALT\grz -. s/0A*'*+   1 2" W34 6$ ض34 7! 34 8W34 9" nW34 :! oW34 ;W34 <0*N 34 =0*M 34 >2*ȶf@ 34?@Af aBCBaBFBaBIBaBLBaBOBaBRBaBUBaBXBaB[BaB^Bh ikm