From 2d55ad9c928867fb071d51803b4f7e7d75fa06e3 Mon Sep 17 00:00:00 2001 From: NotVeridion Date: Wed, 1 May 2024 15:18:29 -0500 Subject: [PATCH] Added some AppTest test cases --- src/main/java/com/cse3310/App.java | 3 - src/main/java/com/cse3310/Game.java | 16 +- src/test/java/com/cse3310/AppTest.java | 172 +++++++++--------- src/test/java/com/cse3310/GameTest.java | 105 +++++++++++ .../classes/com/cse3310/App$LetterTimer.class | Bin 2478 -> 2478 bytes target/classes/com/cse3310/App.class | Bin 14380 -> 14268 bytes target/classes/com/cse3310/Game.class | Bin 5895 -> 6033 bytes target/cse3310-wordsearch.jar | Bin 21604 -> 21574 bytes .../default-testCompile/createdFiles.lst | 1 + .../default-testCompile/inputFiles.lst | 1 + .../TEST-com.cse3310.AppTest.xml | 13 +- .../TEST-com.cse3310.GameTest.xml | 65 +++++++ .../TEST-com.cse3310.UserTest.xml | 4 +- .../surefire-reports/com.cse3310.AppTest.txt | 2 +- .../surefire-reports/com.cse3310.GameTest.txt | 4 + target/test-classes/com/cse3310/AppTest.class | Bin 2663 -> 3026 bytes .../test-classes/com/cse3310/GameTest.class | Bin 0 -> 2666 bytes 17 files changed, 279 insertions(+), 107 deletions(-) create mode 100644 src/test/java/com/cse3310/GameTest.java create mode 100644 target/surefire-reports/TEST-com.cse3310.GameTest.xml create mode 100644 target/surefire-reports/com.cse3310.GameTest.txt create mode 100644 target/test-classes/com/cse3310/GameTest.class diff --git a/src/main/java/com/cse3310/App.java b/src/main/java/com/cse3310/App.java index 232b677..b68581f 100644 --- a/src/main/java/com/cse3310/App.java +++ b/src/main/java/com/cse3310/App.java @@ -367,9 +367,6 @@ public User findWinner(int GameId) { totalWordCount += u.wordCount; } } - - System.out.println("Total word count: " + totalWordCount); - System.out.println("Word bank size: " + g.wordBank.size()); if (totalWordCount == g.wordBank.size()) { return winner; } diff --git a/src/main/java/com/cse3310/Game.java b/src/main/java/com/cse3310/Game.java index f104c56..4e30e4e 100644 --- a/src/main/java/com/cse3310/Game.java +++ b/src/main/java/com/cse3310/Game.java @@ -15,6 +15,17 @@ public class Game { public ArrayList CompletedButtons; public ArrayList AllCompletedButtons; + public Game() { + this.wordBank = new ArrayList(); + this.startIds = new ArrayList(); + this.endIds = new ArrayList(); + this.playerNames = new ArrayList(); + this.ActiveButtons = new ArrayList(); + this.CompletedButtons = new ArrayList(); + this.AllCompletedButtons = new ArrayList(); + this.GameId = 0; + } + public Game(ArrayList words, int GameId) { this.wordBank = new ArrayList(); this.startIds = new ArrayList(); @@ -167,9 +178,6 @@ public char[][] generateGrid(ArrayList words, ArrayList wordbank startIds.add(startId); endIds.add(endId); - System.out.println("Start: " + startId + "\n" + "End: " + endId); - - System.out.println(index + "." + wordBank.get(index)); validWordsLetters = validWordsLetters + wordBank.get(index).length(); index++; } @@ -192,6 +200,8 @@ public char[][] generateGrid(ArrayList words, ArrayList wordbank } double endTime = System.currentTimeMillis(); System.out.println("Time to generate grid: " + (endTime - startTime) + " ms"); + System.out.println("Word Bank: " + wordBank); + System.out.println(); return grid; diff --git a/src/test/java/com/cse3310/AppTest.java b/src/test/java/com/cse3310/AppTest.java index 4b14916..738e424 100644 --- a/src/test/java/com/cse3310/AppTest.java +++ b/src/test/java/com/cse3310/AppTest.java @@ -1,120 +1,112 @@ package com.cse3310; //import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertArrayEquals; +import org.java_websocket.WebSocket; + +import org.junit.Test; import java.util.ArrayList; -import java.util.Random; +import java.util.Vector; -import junit.framework.Test; -import junit.framework.TestCase; -import junit.framework.TestSuite; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; /** * Unit test for simple App. */ -public class AppTest - extends TestCase -{ - /** - * Create the test case - * - * @param testName name of the test case - */ - public AppTest( String testName ) - { - super( testName ); - } +public class AppTest { + public WebSocket conn; + User user1 = new User(" ", conn); + User user2 = new User(" ", conn); + Vector ActiveGames = new Vector(); + Vector ActiveUsers = new Vector(); + + public User findWinner(int GameId) { + int totalWordCount = 0; + Game g = ActiveGames.get(GameId); + int most = 0; + User winner = new User(); + + for (User u : ActiveUsers) { + if (GameId == u.GameId) { + if (u.wordCount > most) { + most = u.wordCount; // Track user with highest score + winner = u; + } + + totalWordCount += u.wordCount; + } + } - /** - * @return the suite of tests being tested - */ - public static Test suite() - { - return new TestSuite( AppTest.class ); - } + if (totalWordCount == g.wordBank.size()) { + return winner; + } - /** - * Rigourous Test :-) - */ - public void testApp() - { - assertTrue( true ); + return null; } - public void testGame() - { - assertTrue( true ); - } + @Test + public void testFindWinner() { + // Create game + Game g = new Game(); + g.GameId = 0; + g.wordBank.add("A"); + g.wordBank.add("B"); - public void EndIdCase(Game G) - { - ArrayList array = new ArrayList<>(); - for (int i = 0; i < 47; i++) { - array.add(1); - } + assertEquals(2, g.wordBank.size()); - G.endIds = array; + ActiveGames.add(g); - assertTrue(G.isEnd(1) == 0); - } + // Set stats + user1.username = "user1"; + user1.GameId = 0; + user1.wordCount = 2; - public void testEndIdCase() - { - ArrayList stringList = new ArrayList<>(); + user2.username = "user2"; + user2.GameId = 0; + user2.wordCount = 0; - // Add elements to the ArrayList - stringList.add("Apple"); - stringList.add("Banana"); - stringList.add("Orange"); + ActiveUsers.add(user1); + ActiveUsers.add(user2); - Game B = new Game(stringList, 1); - - EndIdCase(B); + // Test for winner of the game + assertEquals(user1, findWinner(g.GameId)); } + public void gameWon(User winner) { + ArrayList disconnectUsers = new ArrayList<>(); - public void getCompletedButtonsCase(Game G) - { - ArrayList array = new ArrayList<>(); - array.add(6); - array.add(7); - array.add(8); - array.add(9); - array.add(10); - array.add(11); - - ArrayList result = G.getCompletedButtons(6, 11); + int wonGameId = winner.GameId; + for (User u : ActiveUsers) { + if (u.GameId == wonGameId) { + Winner e = new Winner(winner); + disconnectUsers.add(u); + } + } - assertTrue(result.containsAll(array) == array.containsAll(result)); + for (User u : disconnectUsers) { + ActiveUsers.remove(u); + } } - public void testGetCompletedButtons() - { - ArrayList stringList = new ArrayList<>(); - stringList.add("Apple"); - Game B = new Game(stringList, 1); - - getCompletedButtonsCase(B); - } + @Test + public void testGameWon() { + ActiveUsers.clear(); + ActiveGames.clear(); - public void GenerateGrid(Game G) { - // Create a Game object - ArrayList stringList = new ArrayList<>(); - - // Add elements to the ArrayList - stringList.add("CAT"); - char[][] result = G.generateGrid(stringList, new ArrayList<>()); - assertEquals(20, result.length); - } - - public void testGenerateGrid() - { - ArrayList stringList = new ArrayList<>(); - stringList.add("App"); - Game B = new Game(stringList, 1); - GenerateGrid(B); - } + User winner = new User(); + winner.GameId = 0; + user1.GameId = 0; + user2.GameId = 0; + ActiveUsers.add(user1); + ActiveUsers.add(user2); + ActiveUsers.add(winner); + + gameWon(winner); + + // Active users in the game should be cleared out + assertEquals(0, ActiveUsers.size()); + } } diff --git a/src/test/java/com/cse3310/GameTest.java b/src/test/java/com/cse3310/GameTest.java new file mode 100644 index 0000000..1194468 --- /dev/null +++ b/src/test/java/com/cse3310/GameTest.java @@ -0,0 +1,105 @@ +package com.cse3310; +//import static org.junit.Assert.assertArrayEquals; + +import static org.junit.Assert.assertArrayEquals; + +import java.util.ArrayList; +import java.util.Random; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +public class GameTest + extends TestCase { + /** + * Create the test case + * + * @param testName name of the test case + */ + public GameTest(String testName) { + super(testName); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() { + return new TestSuite(GameTest.class); + } + + /** + * Rigourous Test :-) + */ + public void testApp() { + assertTrue(true); + } + + public void testGame() { + assertTrue(true); + } + + public void EndIdCase(Game G) { + ArrayList array = new ArrayList<>(); + for (int i = 0; i < 47; i++) { + array.add(1); + } + + G.endIds = array; + + assertTrue(G.isEnd(1) == 0); + } + + public void testEndIdCase() { + ArrayList stringList = new ArrayList<>(); + + // Add elements to the ArrayList + stringList.add("Apple"); + stringList.add("Banana"); + stringList.add("Orange"); + + Game B = new Game(stringList, 1); + + EndIdCase(B); + } + + public void getCompletedButtonsCase(Game G) { + ArrayList array = new ArrayList<>(); + array.add(6); + array.add(7); + array.add(8); + array.add(9); + array.add(10); + array.add(11); + + ArrayList result = G.getCompletedButtons(6, 11); + + assertTrue(result.containsAll(array) == array.containsAll(result)); + } + + public void testGetCompletedButtons() { + ArrayList stringList = new ArrayList<>(); + stringList.add("Apple"); + Game B = new Game(stringList, 1); + + getCompletedButtonsCase(B); + } + + public void GenerateGrid(Game G) { + // Create a Game object + ArrayList stringList = new ArrayList<>(); + + // Add elements to the ArrayList + stringList.add("CAT"); + char[][] result = G.generateGrid(stringList, new ArrayList<>()); + assertEquals(20, result.length); + } + + public void testGenerateGrid() { + ArrayList stringList = new ArrayList<>(); + stringList.add("App"); + Game B = new Game(stringList, 1); + GenerateGrid(B); + } + +} \ No newline at end of file diff --git a/target/classes/com/cse3310/App$LetterTimer.class b/target/classes/com/cse3310/App$LetterTimer.class index 4c15f7689ef0e99c8c72817d005c89f6f311e71f..df66dab4f2f546890683e4d19ee55f2cb6e1d309 100644 GIT binary patch delta 80 zcmV-W0I&b96Rs1moCg8Tvz-SO0X@$E2m#Ol4FS{u9|6?>Fag*ALIK$TQvuolWC7d& mh5_9GkOAHRssZ2tvjO1%x&h+=$^qp7%>mQ^(*fv{?+CvZ8yrah delta 80 zcmV-W0I&b96Rs1moCg8Wvz-SO0X@mZ{(*f&~?+CvggB*MS diff --git a/target/classes/com/cse3310/App.class b/target/classes/com/cse3310/App.class index 477ca5f049e658b095dc435977a5ce50cf188805..fa8dd45efbcd4e9c8c81f42a45c19c0b073b3679 100644 GIT binary patch delta 4789 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 O_0|6kVI`JhBk*5%H50`E delta 4881 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 b+M{`sJ}r2Y*5)nE54QZh zeFuQP_}NAQ7MoaNLt}9aim+73143LO4+>c(WVw)sggk7MJR;l*Ikqwum*Y_(t4yr6 z5sx)C9z%n0kBh=u8|(0di6?C&i?e}23+qj6h#qou*4n-Hpc_SLqik*x?kN+SZDitU zAd+C(8_Zrw%W+TVhfG(eO|~mAt4(t;6)2B$zr>OmrcAPq9!3bEWB!=*}`kG z`?_IbXQQbsrHyPiOOJKqbedbE=cqRtkLkaZn%($o)L7*XkM%H43_!raRk+&0IT+~RO}ypcZM@^)U9>2~&nUgQG{2&>vOK@IvbwCi ztjfWA*k$5<2OnU(gAehMgWdSp#2yEq;8TV6-jSN>=@t3z@#vg^pJA7Sy`uX$_O)$$ z7B8)?nqFD%;0t`|;6_o~k9`gf;423Q@wGy-JJe2g8_cA^hj7@zAslh=4ZbvS)WNs- zP5~nPUO~-1&G1Fn%qW{$?cfLeD2m1I5wmlAY{|^3X&J*xE3Xe^$g!Uq4eN8|4zknT zKVr^P!`;DlntPi)(opE>?zR%$A+|rr3Kp@~fEXx&ikuRlyf4w^Y6y9aq2vg3WIc== zF+Xih_#lGkr ziBL~w5K)x0aa9p+RfO9a;eex&^p7$?Nnd0Fj%IQP=wUEnYJ*=S<`m{*uv@-p*E>C2 zg)4cC7hezpqCX(I>3|V%yT`53>XpWpxICrm-9OvU8t6;Rc^*+de+U`P$PA&&)rE=k z{c8Q+fvxEFGO{MVfb4|sA>{ZHYkko^^SauZA>@Y8BgCupTl~4XdEE0`zLeg+)V?9) zC-mZ)+eQ-#Lg-yGKUJ-7-9%d<^l`6DNDfjdr(;U@a#~5~7uKbzQ=Ao2C^3c5KkO!a z*l%qi5>YG-RA&|oC}UGyi*_hS0v!aTD928VgVp zL_KcCBHV_hxE&3cjS%Lrl6P{1-G#%LOR(qR7*&sBAzD$ZEZn2oqfYrzPsjJFvvI%b zjU{RhTy-}dR12|8)nU214=dDStW*!$)r@tj1;O>|BWzFy zuu=ViO`4C3cCbMw;8~r9ExH@F>ON@HL$OVdM@X08B|Qn-^=vfhh1j8&;8nd6uj#FL zL+|JMFy7YRbMF_ttA9s};lq1I0d^VvIl?&{)EH!{Y$jC7{z+r#3xe$U08-T+-q)$Z z(d{{2qovY$f!Anh2r+|c1ULo9R5?K|gU!cj9H9I!>@(0o*YQSP z@7W6ycxn0+>A1FLCKsL{K@nE4hc(VH`r!sv%0N4#2M^6+Jrj&<)+>N$BpF?KAp>mP z3?s#x%NDvCNvvcUZ&sGkf%Ob9M1GiI{hy{8Z?qCo2P_MVJ4=UM4i}Yr8LjWDIRBuF(oS)E+WOr0DC%Je@ z3|`U*&%JO$Ln)Iv^)nJ%*;*Y<6q(TcF@R*HO!!UCTm|<+pY5A#C|>K6=t@~;E3I;~ z$X)GAN@L074?G}Ba)wRV7pY-|Of}bS_NB*+Xr(*x;THKi1taFvNyMn^6UaY7V8WAN z9(~@8`K0o)^y5Echx+e9iRKpgyvtMKCB}95DWMv#!9r4nS`I{Sn0Swrm@pFZ8FAHnZeV9j{^AlW{M(`y!8DF0DyK{|j-yXFUAcwS}l~zsv-U GMgIUKLE8}k delta 2508 zcmZWqX;f8J6#mY+@b2YuQ+WEG!UF>%MKn;H@ugB)VUAInr6r1)rAUZr13fd%p;GZ$ z*+6PqnyIPivq{4=E1N7!n`ko2=GJm8R)a;~eovmd`m^tM_Bm(oeZKvjbF1^_=Y|ga z`{Hf@-SE4O?x;4g%!WpF0t(=YSuW;5F%OA(Sj-ABkBE8Hrg==zhn3X10 z*+|A}8&6`5ptZ8#DH~5?or(1}T1m3LAq&r#*x>1RtbEN8`@&mf(X%qSQP3t6n{8y` zIWb$rvsKWx1V*VfvE4>{R9n~~->{gS7M_>y3pQTFOBPq%2GNd+f6cjZn=(ko9jXD3|*z(s6C z7LPyuJsdRgzJm{Nm4ie0(7{JIY~qN6kMW6n)YCKgDGoaLOr}3ay+YDWCAXI3O(`jx zlvi9?F}ZA#gD>!{#sX zG27NQn1_`ra`Wso_lJamYCr^avL}YvwF2r3NPrS5h?Ec!`I0@33W+r?A|jEo@c<%n zde)fq#>TRqOvlEuo}`~OE<&p_9VRCS;c_M$?Ap!@a|jdXBGKKScwTV;Bawy)NXJlm zGhon`Vi<<=D`-R{v>-Wz#ufBBj2E4gVxq?=Cb|+=(GGS`I(^1U4nN{)Gth=)oQJkJ zA6dvoyI7_+Fqu6V$(a+&nS)XEDO?@NWSoR$VszSH%&l+@u8o{x`8f?C$*_n~fgD)q zgci7f8FP7>Jm%<3Pd<8}D+aI)MMQ(qlhyaa81%+?o@NTOOk+zb*pyim^cR z?Rbzac$BKHA=PV0?#xt`7w-*9AA7wj^^R&aUF{@V&sd*ypAU`aJ9Rnd475!Q)^sLhIrwG zA;9w|*-ZzGiS8H8S8AP58%oMm>WI5JxqQerw0jBdNAEo%a@w(3v>&ktCvRN7`xCtj2@%r2GqL74U82=&$+3@%b$mTQSa0qDwTx0R0={& zJX@WQIVvCXR23Ged$3U5i$!W7?o;<;iCTitQndorYBiRrwOqIX52-L7R=co5)!`9! z0FSGKs8RKJLj3`@4Xd<+8tuheorb4$JFL@Pv0nGb23?Ac`T=axtFc+H#a6uz+w_~* zp${Rf>#4D3bWe2ZsUez5wQIy1&% ko@j~p6FtB?7A>(OgGxpJEAfL!^ytr~sYHb(T&l73KUd||l>h($ diff --git a/target/cse3310-wordsearch.jar b/target/cse3310-wordsearch.jar index c6397c877412ca197515c774237d545805bc6694..4676244115a886ab4e4b1e9faae4f8f40dc96ee9 100644 GIT binary patch delta 12712 zcmZX4WmKHavNal9f;++8-QC^YU4zRYg9Vqspo6=+1a~LEpdnarcP9{X^X7baopbK@ z{Mp^r)q7R2nYorzC)Opaq~IAQBjUlmS9_SyFE=61!JykU0z<@a=K% z5XyCEEI6W(HUx2%dKlKNP$k+&Ot67B#JgQD`h}Vr=4coo_IiYD9?tH&6I_`5(FzK8 zg*p%e(WRMPj2@E=EBi~T6%QGnWb)@bDET74hPa9ZdY1af~8P{+R?Aqyh`hy_Oyuk&|2h043U!3S$ghX)3>|l*M zFYdB6VHWj#T>4py{P@G`uy}lT^--l2mR(HrDL=ycaX;Mpv^`9(DL+ybtj*8Yw2AD> zq@$`UWpZWZM(@7ooO|(GGwG^T7&S^pRvoB-$|WPo6a`G3b%m94yJ=Z;1Khi`vNWgm5mimILB8@O)g@OH@dpIML zQwc~-TGS^<5|iYD5~|3pPZ}6?PLhea-r1aqMV7%@eAoPMl@xU$}6*f)nu$G7q}K`vA=C z{~js>(F(c5dQI5$L|pWHQ8x_2ccAWke~J$ z!ewcSH)vEP&lH2V5j!Jz)3&k7cz!wt22~&d60N@5wQo~8R+b!tkUVW6CjB)qlJM(( z@0%wAwTk;j$-VLiNE#0ho_XG24uE-MEH?a0K#%&U+!HfaeRqMHmV%TS0Iui*4{d`} z=18xM$O}5lSpfA4hI}J=WB#uQsWZF4!QcUh2PW2rA8uK{5}9y*qrD7ScyR^g=ZtEv zhYBgICE>QCBwQt5(x;mOd&*tXae}kD)xJArE=-eLCv$ra<2cYdJ zwP0xy>ZSw{cK>P_V4`3ipqV?2wLcQeq#5|3=GRMsU={C-6@3+&7BBR&{+Ruv%HG*Fm_TXsBS(e zC|oFzx;j3v))2{0d%xqYm&se#3fq8NPpj2dve`PYhHV$!L9+5}oK z(b(Z?c-qT-!WPDkHz4>J~fuQVP+Kl4fo1f*#uVfuW_lMTu z=b6(FfRf~Grqo8P>88>Lyw41iEFNmrBN}mhQy$seM#_oL_GD%|DDq_~e)R)F3bV2~-8Ei|IXOIXdLA zKP!j<^Yd>O&R<(5W}l8(^Db%b>z&f$--h<=Sb}GE4q4tpN5op5Sa$`<1sr|n&8 zb*^(LV>BPL2SaOSRl`E2;7e1iT#o*|p`n*%PGc!0b|x=qwT3aY*?caHdHuf9p7VZU z%sN}}pkB>+wPits=NwzLvgagoF2!DLJXw4unP$S;+AfGWZ8Y+DXqwH7c8v;n-BvZ~ z#fkS(tG~uiZ*0}R#G4NL8+02)`y28)Wp3^vbfZ3H-oEyQfwKug+}M0v=3P_g@!@te z_Z)H=?(*2qTx4CM3Z|sBR)DrDogwAeN-8FTh$vsprV68BXO?{|NnAQB`;*I&eksZ>uz3eDqe>}@rhw=c0I`#Cu(Sv$2j zIs`Bisnvgt$7Ka5QKI)_tD)l?X2TD0-~RSNTWPOkTHa(l;FM4(W=RIxJ0Gqz)8cG{jE?DS#ofUIuGxspmbqjb@R3V$3!v<65lM#G z@e~UU@|J3K3ulk%k{*lHCxDzQBIyJoMXa(O3~_r9WNSL(E%BtxMN?wtCQ1`=bwh{q zW=f;d7JeCu&m2XEYAgeaG;x8w&}OkpP3u|jT~)nC-09Wad*Ln5L zCqbOJUbLE(1S@km*nJ7PM!0Lc?fPq}IGapiRxwrJy6NoV3H$0NR+=+$pGsHn^Tc#} zyH$#%RT8J9QPPW#YSc!jX_&Wda+VHPQ-oQhgps!ZjZ5e^M?1SwyWIYI^vgBAv7K5% zPME9DLk#v3g2}+d7Cz|eQV8CMB427aa;vTY2u`bmW(qSgvbeQ~V}FY$#RvShQOzA8 zO!@VvowdAZJ8P|Wfn?_x)+yJ}t4={9s$+XAB}#@u4t3scTS6FR1-|!sKL@pc_36z8 zHzG2tXj8DCHHH14{|T$ZqLtV{g@rw<)piZXNS^S~sCW<<*-Ddp;nmsg(a>5q4Bm~C zmPW6;*rZX9eOO<&7~Fz*DXKb#?ryd;f0RztwO($AU*YTEXU{~8PRlV;%w6oHZr9O;YfER$uu9?Qee!(1{NJZg}o1eN=Oc z_&q}Y{k73}8zkR|rXSg#06DNOqFStEMW*PF)P^7_tTa5clQ%xolZOwYB1!P}FzAtH z82vmlF`^Q+b*gdTP5Q*mF+BJJMqngb#ZvfWNNpZ#hqk-g-+=yo*=ySA)=v%%{ykchqs)+0^5+Ps>tQZ;*;}g4j?>ePXY~>hhDv+-PFQB8>8~X5bn`}6 z(`3`lJVr<0c3T&dq0Y`o+`^wrJUr8d`%ZemdgR(#5#Jz}-A;%D#a!4#*e1Qv6augn zMq{sNzO{u%7m0@-9>wJHM{Q?C?YjW&witP^j2Dr(F+FY25 z_7WU2RXEsb0z%1O5l!P7Xh;ec^mCPig*%0F2zcMg1D#!nfaZ=iZM-H|%wEFc^84@R zmM7YDRn@`>nZDH;dCq~CoW2dTwZuvQ)7LIr-iO%gx+wUzpoDQb*J_%lM-O43!I6Z? zD&fA5yy06~=B_gZsGbXYL%R{|Et~N9z{q`cZ z-m1&I*hNX0HZNZ9aG8SIEU>znw~{ymuCu0_7j;RjonETSDzmmajFAuhK$|BF^!Xq~ zNQ+aB)BYBnV_`EfG02M*w;dQDOM?r0;^s@u5=nNHZw$8o7_}aXHXr?pqaRuTjur}j zOkHoWyf0H~aF=k^+%KEcp{sp;cd6&EfRd_@_0VXupr)M@&st4vcvU@gJp4VjO-n6) zv;V`zTB@?Np%Eox`d-bYGDTk$@Ce)Fcs;@kEwR*{pXeAp6ZEuCx{no@2kKW5r$sYg4r+qgE+-@X)^@SI!#^&F8d zm(vlUx>jG;Up8aEN?f**8bP|kDf+_ALmbBvV2t+8@;nv^lWR_kCta0i;6wP5L+mpybfM>y##qeA4 zT?+RTFRT|8EV;ELoiJ5D)SDF8$Jx6bP!|p^HNjP`0F>ZR+QTFRFOU z`b9zaRTawvGw7{mJ^g#Ty`yzAs_qzAJ);LrqS^ZNA9muJoJm7W#Y#^M)Nwa>lAm;Q)$fi!dgTpz(1%K0X56V7?c3t^gWoh&$?#UX!%MV$+8et4oy_2xuigRQ@o zYK%Y;xxd`~h(YWLa4cmmQrcMZoDLzXW-gwQ_@;~@BSE>W6bBnnAWwU zG3%kWY$I#RYUkEj^S=Dthcd>bYrz8KLp>ewyCM4u=LLyIflTDtZ(2T2URBvK) zx#-$sFcTj}cSBD63=zFDpf>i!zvNBgc2XcDGj~=Srz>8{-NAg|{FNEJL-|IDiJxn< zpfnjKwAbrcAz}`y16p!0OAO)b~8QR`aI&Fuy~Jr$aBX9 zK>Eyl_AJnYx{CZE#0t$(UripaVkC zU+x@%zCTVSewbEO@J5jtX9cjEPtL`fXw$sdjhl}Kg}9uTD)Jl^W~p#irOeg9dV!U_ z9?$Q!4{gMEeemzFjyno&p#{xCSv|!MnIOCMz=_?0_bt-)@SJ*N%zinl-zvK5znB3= znkiVlm96>cn1pz6+eDV0Lj&hR$-n_@wVzEt^hH(W7x@Pq#}{l!-Ch>lgf3VF;kSJ8 zXZsGQrf=?QFE|DVUR(qyNBifE!oRNYD!#kHzq^M>e#aia-Bij*M-acvB5b-1e`fuD z2vnM->H44#RRnv$DmW$KX4uZIf8?4&A=2t@+AhyKgNO%h@u{wePJdAm5eKhkE=wr?SP5x zj7*;wG?Z0gpF>mMM*Mo$%syPN0lR^454Au$xZv(+`;5ky z&$`9f`MLVovaS>n7|ZJ(X6Q#J^X&LFD9Z^ISH?7%8b z&u3wBoF4f2Tj(H?Uy;E|GVLEb1dX7^BL$P$WHUHy?~JWvFI{q$v@c1|ZYwr{^Ihz= z`EAOC?HRExTxp@i+?ps0mu`b4Sm)e;q|GQ|`lZRE$M$JC8$*U)(AB|$<6j`;b5pyH zWKuvF>+Clay^m!YL09~33SYo?c0gVS{I^(@pD3bQDvTqCu+pJJC8VX2cS#U|BXU?0 z9{sX+xE^QBKP+xk`4x*B+~OzQ@N%n?6o%3{3eKf|R_}V3QqfVxl?ho zYXF7RYXpTUhbIrKdwt#q5#XaE3c_%5*n(E)OK_Y9MlN01hSDuKd^Fe*ivYGL8_8PP zB2tG{KH>bqRrmGkqUe-srZj)X+d%M8z$>|J%iZh&Mp|-E=Gl$RILXS4AM1H=-Y*SFn*JG9+a#Ojcw?I+H8P0l*Qw(KY zhzC+8t4M~CDEwFg)QA4d$mWY)GgOiGqX>lij}Yl$iu_oq;yt6hYL<;4HJ{TFWDQUJ z%e0wD$C!aUM<&k%wj_Qwjf6H z3If0Ysdmw52MGTG0+dnN;HLDw*eNSugNmT?ou}dKQvj#G!Pcs2v_$dhz2r*0q26(Y zx3g_!6uZ3G$JLCMe4m%fpjS!Lf7h)@ab-aH%V58*)0qW7bxoq^xBpEB3J+-jCzdQx zVS7swFTV)QX?I9#(#}joG`>iOBRNfuKdxR$anD;v+4U%T`G zRh?n3EOaaP5wW?O9w}S6Tyy_x@@L5zjrGp%N5myeODL$_J}&53Odz3s4=K^m zfaDWzW@Z!H5}1CN$Tt*~16*)om6^Z&;^w1^FlNEW2X;Ph@u&(8iHE4fs*2^O~mw@e7qhM_eLgBS-G{%#q7`>+bs0Y@mnRq9si_60Qww9ZlxOebcvd!N&cv5&^zLv$Id6s-|N}- zfWkonYd?u*zGb(IC%F~&rp4W{vM$%}CI9p$fn4s+{q*&Z-<*>8r9f6MHj90i;a~Lj zF6s`$KQ=h093XeauxVg?B9g6kU$@VB31EFR9md^M5guBb;p#Cl-rpF|>ejmI_NJ@AV1vN|yRk<|1|WSD1jw|lX{zk?$dpLoA} zzCyY$R*&F5u&puqG=aXJw{C}LR3xzO8mgWrcqU==w0qMpE;}CMIdB(|k9f?#*x?%9 zHiV6v?q($A;3lp@qEGeH9Ut}gcif{2Ix0ts(4Y!Ep)0Ax}k)reo={cuo~?o)y9Uo8SO-7H2cz&R8||MubtOO?b_p=bmEf z;dr6om|6YqQv+@Xm0BOxNYs{P0MKq5y>Pnxcdo0YN`YU#N9A2W5(M#~A}Gq9?DVWu zxEPuDiG%oPBiuvoiix|fC>OapaQwj|iukkJe=76mtXA&`l5KK2<_JV!9e$qA#y%j zMb@0u&xb+`fjMMeH$fmrTT&V&n|mc4U9mNVZH$G*A?=`4*@7Q(%{FnV$nww42#uEW z!Z0GYKi&3YeC_T1&MYJ=3seMETlJF#Eh8D(a=J1CrNPT`*b`zn$jw@bU$tJURaP^B z5rRqc^5%dX-l~9xmvH2oM_}O*M`YLs&DNNtq>Y+{V5VpU#oid9S@W=jP&{(zj)fLFyh#v7<9QLb=bOJnUXMG`XsHE zme0R77&86x02>sFfRZD=QK1;)@N&ah;c369bYi=`bmCo_DcKXk6yRk|NN+Z>c0G}X z*cpq)uejMi&sJNB2b)QpvIYKN`Q!UwYNN?0i|1jM5_cwCHyqxEtkG*c@GJ-70an#v z?c(_PV#Ll1WiO759~QhX@~4NkvzMhnK^=pLZflxmHUouwRtP` zS&ko6+SRBl>cBQ$cuk^gf3L&JcG;ajZJ)i%r7X zTw8@@e*Ed(V-@oLX&6;FL(U@&4(9rw$2w30h`aXpU+yIw&$~BH^0vJ?x%Cj37PTUb z*1?m=e}14u?jT|7Qqc9M>Sc(hOeUD}ZQlNcJf3Fu`DDnB%MAsi+OZ_mYP_Ded--=_ zbi5FGbznCNRtJL5waUuKpZ9eqe*go*xkqw%6~5SyF?1Q2(Kh63G8J&d8;mNrA%);4 zCKAqk4_z zS*XbsuFl)>Lf%225Fx4Oi3$vY_>M6)y#-fU0dZ}V3BfKQ%FNp909pNEo`blN-zdnU)U%qJ5g-{8MT+8+sxmf<1jFYdNsU!F@lDElASv~ z;QUxvslorTwsOYuW^2`~(cRVfow>LEJpdRj$;@U?TJW-8ONmhIYK{YGruPQvV5Ic6 z$~A83R7}FwDf13Q$B0QwzUr}`d_)8T%b_NVkzUpG2m9>b0pX&8;bH?)m#;Vs$HtCf z5**^nG@{BDaKRGaC>%OvZs({B$wXo@AF6aCnkqsz7m<%$T%>hl&;VI#8jJ#A!NC4f z#?R@6@GZRQ^uv zpC0XhHemnuXc7OaQ~qhvR?!wg|D#B0R-r+PVddDYRWc2$?9)}{6L%4~h<@|~|8InspX`D0pAj=N! ziWd}U7y%r}N%A*R0=E@=KDZ0xRzzfvJAUh11K2k&CDdIs3IW$R4}QR_782pz0aLWu z$;zM<;lqJjva`o6_>P}cXl%&s_yoDOTH4~=NbRd2JOl5MSXt=V=NN0Ry7y*O1$_0q z%S31!ZMaUEAZ4OcaBZrHRDoaR5*gpwMG1qtk-V*~EvN198gcrn0@J3b72drt!cFndc%L{n7ZYz9ZpXN0Z?``YxzR{E0T6MT>8SL5RBJ}>Sy@g}$J1&aHT}c5et1qbkde4fF?A|N|7kU zx-z^@&1x|sMFM_l&Tb>|#M7B=b-s|!neJQqzGJqJ18k(4xAf-Zu_U7b$#&1igu5cy zVdXZ7TiJGRTzpn&E4n%5urwhZWn7?Lm!9X`ZL=_n;is8x-I1+f8N&?4@!Yl91}Dp5?~kII5N2lL%B7N}9c}BLKs29=5gF8TR3gpWLu) zpV{S7WPu6?3Ldf4w=@PHCcGkop3rrFvcqx(`4NgeY~#KTN9nnT&~O|HKVK1b1h?B;?SBuZ>Y4dyc_|Ek|4F!Oe#TDSQr=!xr% z5}xqzeN$WYxwLm(vG$Y@v+?wh#seS<{eLnm=iNQ)oh!{!ASC=1D%O+nxfR|D{q>>xf5}e z*Pz76gCNHt3+GK{$5CA~AB%=nnNLqRLBIsrNs{)3S3-BX>6u}}x-KeGS&zirj@%Wx zMd>fOKz03?NUjQVt!eI@HwQ@5S=~KPcrCh5YArM4JEw!7jixbG>oO07TesQuzzmX+ z9au^5ZMQMN{#6jebqtD&w>ji37REqO67B@W<}Nz;`9scV29r7}g%E-O#Y^O^4X~L) zB&$2@``*DF@hr_ZeskfEA+HRu%ZC^QZ2Zn=6tgpO03y4Ka7A?c+5qGtSGLr)@`8)V z>LivEtBs(V$LOxId`p4rFbF@6EVrQV1BpA@g_$r8zaZj=c378hC&Hdd%6ddQ!)C$aZ@5qw%?+n#gNy~1=yY}r0jrcEVsR5(Rw zrZC1qm3}PfZm~pggr&&1K;8_$0c^A);5r=Do|+VuKQ{NeV~`=G1G->d*CNx!ujCDJ zVOwU{=su%{VBz5STUqL}9vO?fsNw!S5g(Wm1|lVJv|PWS!Y-x6bPln(fIv z%xnwn#F&>|VHgTm<)B|*L%3s)Lz+pmx3y)pv({L&TItiMlz9J>;;C2K;31pX>DSoE z_o_GE>8p{{O0q}dn(ku#vTc!y^}torcypu#RQxpEi1pV6FBRWD)IO|-RGm+8OX@MJ zctm(aRgsEI5H}ueU|A%i@C&BBR$ShFTV>sd3+uO?QWsXc5^Fh`8TskN^=FV)HPO#svOWaz~#Vnk1!dPkr9p@AqZcSJlbkTAb*{5k!}yT`i8NwQ+m zViC!s3z`RKF+7+p=%QcdC#Fb6hEL7nM%|HWP7bl_i1vn@55FFF2PZAxdMslf9baY+ zC?7y~au;Gp9OzgP7?gE1Ku?2H@=bgusNcO$^uscOzYp8DsW1K28ELX#9%p<+%{eDM zjfgj@GP>FLY-@qi4of{?Ut(>zZnC(<=8Pc-D#N>&g@N z$&z}SX{nP?!>B}Um#;Y?g`UbXtkxHP2~bVnirF3;u*`;T%qso9St!)U6WM_~Rb?-; zY$+%+b#zbHP7Fg+G=br?di)1tbr3*D3`M(|*g$7ZRoRBlx&^5wU!4BjE7(+l?%8r%GNnpg(cdWYp!_-$8Vn|%VV0g6*122*o@4_XIC2Acu z$i287?n^Y2d-Y1l+A!@pYuyN*J8WC5kXyz|V%JDdY5?Y%43W^V=o!w7dp&;$*){D2 zKKT~(HHL5ny`TK`c5o?b5~IYK=ID;Q4RW43(AMh9d|1nTYWaR z4CI+iQ*mB$B4NtlIBD9}olwniYTs*OgZAL?KxVtZhDzFYtKxealr6LCS+r|Z zCfW*NG+XIb>&y(zh0i(CG}||Ik=3VjWmxp8pDa;)wa?^XS0x?oj(pb5ssOl)c4#VV z@R$l(pvuX6bL?6yPk8CDUt08z*J=6ycPS6d#%yiyoj%MUcjmFhD0K*8@iAa*ae4%g zdW$kq&5-6EceACQ1=}7za%Fqoq&(r^_Apl`6O~<;Z2^ChQ$)P$8_mEj{q%~UYFu{{ z$HoChDF!&KnyE+qMsQS6VxFo*B+;Py%~ns5`wN9dO70a~hGsu-BU&oc8}SwZM0y2E zF!f3|RtQ8yO2r2qBzA?R=vf9m?E8dq$u0FpHLP{m{qS+UnEYz_Mux{cj#dIg{LDBm z?7OdIqF8Bz?Xz#@O-OZl$5nKYP_eSNsQY70bH;h5kENc%*X0eNpMT5+I^yy%ATsWi z>s3(hr^hfJc-V{_j9b%Ku-r%&c_9 zzXkx=|2LqKr~j8lT|pG)uXC~z7tCMH{g{f_Uqn*n{$~LsuFCcoJyiMr+G|t=|KhQ# z)?XA;Gx`sWezBVDU+*(DV(4lRqB=eKKQ+{U7F@Vc|Nef5UW3%sssH*IkR@Q5K|?`d z!9YO~{M!ZUcc?WeMV;<1YqvTv3=%!al%5cDqs|Cp&j7*{>%#jlGCmeiJPQFRTLblP^i>+fFv|jeXvCTSFGsOIpqm^P3M%*=6cpKiapVhv zfSLp#B~6^aksEdKOfJGfLFN3B{F3~aBQhvhlj(2dHJZfG^q_G~+P|~wKeG}Ln%2M8 zgtUlZ)MP<1vgH3?4BLu&@!NkWIsRPCe^dXI0~KpA{$+#w*-xVYGE*R6`oCuwdnTGV Z{j*o@&pC+yD>PdWyEf}Pu*yHi{{a~YHzNQ5 delta 12785 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 diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst index 9c1d4bd..459b423 100644 --- a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst +++ b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst @@ -1,2 +1,3 @@ com/cse3310/UserTest.class com/cse3310/AppTest.class +com/cse3310/GameTest.class diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst index a8cfddd..487a322 100644 --- a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst +++ b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst @@ -1,2 +1,3 @@ +/mnt/c/Users/verid/OneDrive/Documents/School/Classes/CSE 3310 Software Engineering/cse3310_sp24_group_26/src/test/java/com/cse3310/GameTest.java /mnt/c/Users/verid/OneDrive/Documents/School/Classes/CSE 3310 Software Engineering/cse3310_sp24_group_26/src/test/java/com/cse3310/UserTest.java /mnt/c/Users/verid/OneDrive/Documents/School/Classes/CSE 3310 Software Engineering/cse3310_sp24_group_26/src/test/java/com/cse3310/AppTest.java diff --git a/target/surefire-reports/TEST-com.cse3310.AppTest.xml b/target/surefire-reports/TEST-com.cse3310.AppTest.xml index 361a424..021d5c0 100644 --- a/target/surefire-reports/TEST-com.cse3310.AppTest.xml +++ b/target/surefire-reports/TEST-com.cse3310.AppTest.xml @@ -1,5 +1,5 @@ - + @@ -15,7 +15,7 @@ - + @@ -31,7 +31,7 @@ - + @@ -57,9 +57,6 @@ - - - - - + + \ No newline at end of file diff --git a/target/surefire-reports/TEST-com.cse3310.GameTest.xml b/target/surefire-reports/TEST-com.cse3310.GameTest.xml new file mode 100644 index 0000000..37a0972 --- /dev/null +++ b/target/surefire-reports/TEST-com.cse3310.GameTest.xml @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/target/surefire-reports/TEST-com.cse3310.UserTest.xml b/target/surefire-reports/TEST-com.cse3310.UserTest.xml index 337ce0d..5a687ed 100644 --- a/target/surefire-reports/TEST-com.cse3310.UserTest.xml +++ b/target/surefire-reports/TEST-com.cse3310.UserTest.xml @@ -15,7 +15,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/target/surefire-reports/com.cse3310.AppTest.txt b/target/surefire-reports/com.cse3310.AppTest.txt index 1b0916c..230bc0c 100644 --- a/target/surefire-reports/com.cse3310.AppTest.txt +++ b/target/surefire-reports/com.cse3310.AppTest.txt @@ -1,4 +1,4 @@ ------------------------------------------------------------------------------- Test set: com.cse3310.AppTest ------------------------------------------------------------------------------- -Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.547 s - in com.cse3310.AppTest +Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.078 s - in com.cse3310.AppTest diff --git a/target/surefire-reports/com.cse3310.GameTest.txt b/target/surefire-reports/com.cse3310.GameTest.txt new file mode 100644 index 0000000..536a02a --- /dev/null +++ b/target/surefire-reports/com.cse3310.GameTest.txt @@ -0,0 +1,4 @@ +------------------------------------------------------------------------------- +Test set: com.cse3310.GameTest +------------------------------------------------------------------------------- +Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.222 s - in com.cse3310.GameTest diff --git a/target/test-classes/com/cse3310/AppTest.class b/target/test-classes/com/cse3310/AppTest.class index 873991978699872ace8e4e54cdddda76d7159b31..3f7257504cd3ad6b2b59f45ac2f3cf08a5bbf9ca 100644 GIT binary patch literal 3026 zcmai0SyL2O6#ja)9)@;9zzlAvK{j>NaSP)%;D$j&QHaK%Ju~gt0^QitgIgA3V)n#n zwyHe&kSbqIm4Jy=mT#%bYkorhN6dHb3@{LrP(|O<_nv!}?|kR<{QlRk&j4)04>|%G zmS)}2M7CfhlUp_?(qm(%tb(s2q+#)8bKFdfm`*-%JagH~`Wix6*Kstg>T$h%LXOX0 zwK4@aJ8b!hK`Ya*q?Cqmv0!;yG}QD|8b8g=>BFrWs?%BD9=8sgqgFvwmAj&Ek0b`@ z%oWwDemn1&e$lfutpA6??m5=QPHHbNmF2b5> z$bjkD@?PEy`Il@0R5u63G69H3?4s@D25rZ&JSw$xx6aX1ut^M?4Qv6c8O&QGh|-(S zo0N`i^T3m030AdYVyA&!cuhmp_ASq3}E!@Y?(eauowGS zILEriNNT4oR1i2-MVDy(?#Y2MrvO?W(J;m+NwijxWxR80f}P4f-Xs z(5vi{9cQbMM2~@E=w;BN-)TC-g5+#aY0opS_t*tL6+<6R>Nvqpd&#kZew<>^1^Wi; zMC08W7W%Gljtox6!3gv7TS<|f*GAm}bB$armq{yXSkUjA+2Ld6Sh>s#eKz!=idx1` zGC6zH8n6pC*^qV|y7O(qf3ml9F2h;c$*w$*3WI^>toZ+T-h!&+?zWfXC_^>FhZO$MG5a~1NX3mh-XJE z(-ZK%G4PJWzZNGs2>RWkm$eSrGD(c`fY>Bl#v1AdS=}&KPCr#?&Mviba;cTWiKhnT z02c7c5jFF^NZsUkI9l* z#pa)tt5!Z6R7gt@!cv(vSkLDc)MGatw(;DcTRKBKHgMI1Fr`2=hrvqtUT_cnH!Yt; z;yIGN!5tw9Y6{ys!rX73#EuUAA-2c$U(li9IqEth%j1#9*#7{HvL2`l{e*=|+7XIJ zI>IZId|{8=IIQ8v7r(98_!zHG;`jqZ;^9ZyBYF)&qVFJ7K%9{@P+HEIS5R7otys;; z)QE$GzlSC2LlfTMeulS3nb#QeknE1|Gr|nY*@?ut$NU1+I87-)t2qo{kp7myq>U~j z)xh-(a}U$cdYq*c!JD*m4xty^;MYjgG#yF)*U>==ctO8&ws}%MAQxVyzYLK%+k*W$ z#t^_;^c3OS5LXgH3oxPp<@-;OB<$yV+Jh6g&`!i^%t>Sim6R8$7Ph<)$U9FkEJbUd z#Faq`t7^On6hz?N{j!E9aDZ!L&DGLDWBEW+dx9IYEbC;i zgA+2!pHvI59m}wTmDz;^E4Yj7O7pwajeR&l=`3rIAWhUZu8_Gj;eaqmohEa zD~iulZ8$`w7x@%ClB|_fweS>u#N)kV3~2ve30bHZeu&n1c!r9hc!;MfAE5RrZk=hL z!tIX8hImNO5-ml)KQ>I_L%A5QyeI}m@y@K`pOSD$5pxqe82tK0ahwUCApK6Var&9; zDV1h7DKtb9UE=DIJhNmh%#g95NXA)?VSIvKroI3d@hPDR(q4liUWgWT!tgmMF~lD^ zLdFojpl@m1(#+b2bH4L^=ic96|N0WZB~&#W z$8-!cG0bWRA+I5fYcb4eh~m120zQ#hu@gPGq4D!+9Hlts<5-AcQ4BZb#4VZK7SAPF zF2`|4EGx3O8^>oduEuarAv$R}mN%tvbfmOtJT|hn;cR4=JlAqIa-%B>k$kmcD)f{r z$6Tmyubb|&v2N3nELF>fy<)hQtOH}jdt}uZtW>UUXUjEneEh=s?99&2vRU(T3UQC) zg0bx%Ka@_PqgJ;(ZXO#MEp65bEc?)<_t#Z-D;tD}NeD(%2#*LpKV-oV**WJ_ij}-k zV+5Ad3PBwFa+IZ@iu^A~1&3S+!EjyUiIm{ut9zE6oe@*X@=NI7U-pxoH>IcA9hht( zwdi=}hUw;}NJRINXOy?*jh%qEZmFsTzE<-UketLit3We1*eq3VOkGOxN(tf@@Vs^4eNnA<=Me-O!e*b+>F@ zx1<;JK;m-(Qpejkp)lA^z@>)1y{*ItXXV(Mj?eLhLT{U5W&dmp_jP=U2RaO_>nP*A zjtYpNgHZ%Ybk=bA%gLh4PNpT%noIgX0zK3*ijbINTU~cZKx?xLM zf@%ft@Xmq{sL@$<-9!$q>hAD!m8wGiM>3^1Z}*93Au>;;g^nh0}~AKT({) zyNuC^VZ0Z_I>Q|DqrE_AH5uMR9Wub{;cRez!{F)iF(YEtn%!wdUkK_#VhQWyN` zWOrkDONJNdSxrawkeE+pc5y^F54Th>&5U{GxkkC?*d7IjFB0z!zk<_^1Oe_iWuG8g zMV}~ZKDQ6I>|N%blBa=RX|>lpFJzbBkex|H1C}$1SaTL{&N`bjtvTxoX6ZyU(Y1@@ z!Wawb&5ZH$V>@Y5Bpp~}VKdWHKGjDOR@#nq-<-vn|E9gu6kKz;uR)X$p; zKHhOWpg;y&tW4o5Ey4^ng&7Eh8Ehkr>@|ep!yE|n9l?k&!%bn5NBySB1cqJoFC_ZL zUOvabK}3&;Xp4w!GP}(e!D(S}xXI#hlf@H0wh+DJWN|WJvC-_ZcbP0IeDrTb9Xs5~ bg9l-`3|}KGk3`i;)Z_m_)D)=+;p4vnL;mx> diff --git a/target/test-classes/com/cse3310/GameTest.class b/target/test-classes/com/cse3310/GameTest.class new file mode 100644 index 0000000000000000000000000000000000000000..3e1409bcc42f00975ea04c3705c790978c63aeb3 GIT binary patch literal 2666 zcmbtW&sP&y6#ga&Nf?F_1Mwj8NsZIFm9=s!)>who#?^mDj#>EC`2(I#X|B!R zauoN)vm%oRQG6-mY6K4zgs+0>F)?vrJTs?n8_Pz`$ts9C z92Yp3^M~>&=&03Ahl_)W(ZW`p$TFKYcYjm0pJn_I5eYH9v!fuG5P)t-Nui)~wo=NM za(az6>uJT{)}xpTlstdu1j3;$grM8D{(=EKe09gPGSlKJm~ILE2kU;ZvtN6%-GS>( zRpu*>Q8w)CB#G!=a`fV}d40zxu3M^Vg0I$G2_z@6&L|)sBF{lM&Cz|$B=|ttaB|h{ z9m{Zx(oEfPs+F3@O4v4Pb&DYfB;VZOZ3?tGqhi>)W6arRi6pPB~=KCXjplg$f|-Zot# zC-VCUS`I1bDpo6wZdPj3memqFSG6pHF{>39k5)d=M49$5+O>3c)NMG;V{Z2Ax^78X zf@%dH@x677FG@g#B2C8U3C$p7^cnapQ$K!p(XX=luN>9L3uadWDYG)MpT4Xi2Sk zoBY%Y68|m0IR;3y4Z!C05&XfbLQHY_HNvZVh|C8kPsB1mBc3Lt=q@@Rd>2$+{_|HV z{TtL&Xct{SA`*IuP|!yla*I2O2!o^$MH(@TVTj`}#)`W zJz|aFJOM>HW_T)q3x3s}=OR55^z3`4Sl2G% z3u7##H$BG3Pwk{hl5`-)!fqmtS$5zpoaH|Q