diff --git a/puntti/batman/liikkeet.dat b/puntti/batman/liikkeet.dat index ca911f3ee60056562f803cfdc680451cb15cf8ce..b92fdfa3e63a35452bf42a123d94b1c72eb90fd8 100644 --- a/puntti/batman/liikkeet.dat +++ b/puntti/batman/liikkeet.dat @@ -3,3 +3,7 @@ 3|Kyykky16|neutraali|9|Syvä|Tanko 4|Kyykky5|neutraali|8|Syvä|Tanko 5|Kyykky4|neutraali|8|Syvä|Tanko +6|Kyykky4|neutraali|8|Syvä|Tanko +7|Kyykky2|neutraali|5|Syvä|Tanko +8|Kyykky10|neutraali|1|Syvä|Tanko +9|Kyykky1|leveä|5|Syvä|Tanko diff --git a/puntti/src/fxPuntti/PunttiGUIController.java b/puntti/src/fxPuntti/PunttiGUIController.java index df5db5ae1df124c0e0314219a9d6e043385c69f3..5bd0329c2839fd635643e67acf3592ad47ffca06 100644 --- a/puntti/src/fxPuntti/PunttiGUIController.java +++ b/puntti/src/fxPuntti/PunttiGUIController.java @@ -139,6 +139,7 @@ public class PunttiGUIController implements Initializable{ } } + /** * tallentaa tiedot */ diff --git a/puntti/src/puntti/Liikkeet.java b/puntti/src/puntti/Liikkeet.java index 5bdc5ab564102bb9ae5985775f8f0138e5236eee..c5d2436f6db2a806e55c3a59e8a3d0e2111873a4 100644 --- a/puntti/src/puntti/Liikkeet.java +++ b/puntti/src/puntti/Liikkeet.java @@ -5,6 +5,7 @@ import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileInputStream; import java.io.PrintStream; +import java.util.Arrays; import java.util.Scanner; /** @@ -25,7 +26,7 @@ import java.util.Scanner; */ public class Liikkeet { - private static final int MAX_LIIKKEITA = 50; + private static final int MAX_LIIKKEITA = 5; private int lkm = 0; private Liike[] alkiot; @@ -43,30 +44,34 @@ public class Liikkeet { /** * Lisää uuden liikkeen tietorakenteeseen. Ottaa liikkeen omistukseensa. * @param liike Lisättävän liikkeen viite. Tietorakenne muuttuu omistajaksi. - * @throws SailoException jos tietorakenteesee nei enää mahdu lisää. * <pre name="test"> * #THROWS SailoException * Liikkeet liikkeet = new Liikkeet(); - * Liike kyykky1 = new Liike(), kyykky2 = new Liike(); + * Liike kyykky1 = new Liike(), kyykky2 = new Liike(), kyykky3 = new Liike(), kyykky4 = new Liike(), kyykky5 = new Liike(), kyykky6 = new Liike(); * liikkeet.getLkm() === 0; * liikkeet.lisaa(kyykky1); liikkeet.getLkm() === 1; * liikkeet.lisaa(kyykky2); liikkeet.getLkm() === 2; * liikkeet.lisaa(kyykky1); liikkeet.getLkm() === 3; + * liikkeet.lisaa(kyykky3); liikkeet.getLkm() === 4; + * liikkeet.lisaa(kyykky4); liikkeet.getLkm() === 5; + * liikkeet.lisaa(kyykky5); liikkeet.getLkm() === 6; + * liikkeet.lisaa(kyykky6); liikkeet.getLkm() === 7; * liikkeet.anna(0) === kyykky1; * liikkeet.anna(1) === kyykky2; * liikkeet.anna(2) === kyykky1; * liikkeet.anna(1) == kyykky1 === false; * liikkeet.anna(1) == kyykky2 === true; - * liikkeet.anna(3) === kyykky1; #THROWS IndexOutOfBoundsException - * liikkeet.lisaa(kyykky1); liikkeet.getLkm() === 4; - * liikkeet.lisaa(kyykky1); liikkeet.getLkm() === 5; - * liikkeet.lisaa(kyykky1); #THROWS SailoException + * liikkeet.lisaa(kyykky1); liikkeet.getLkm() === 8; + * liikkeet.lisaa(kyykky1); liikkeet.getLkm() === 9; * </pre> */ - public void lisaa(Liike liike) throws SailoException { - if (lkm >= alkiot.length) throw new SailoException("Liikaa alkioita"); - this.alkiot[this.lkm] = liike; - this.lkm++; + public void lisaa(Liike liike){ + + if ( lkm >= alkiot.length ) { + alkiot = Arrays.copyOf(alkiot, alkiot.length+10); + } + alkiot[lkm++] = liike; + } diff --git a/puntti/src/puntti/test/LiikkeetTest.java b/puntti/src/puntti/test/LiikkeetTest.java index 87ed2360e5966455c66edb13429278476e00e80a..473f3c7f196aeb0ba944f5d0e2d0a4eae553e07f 100644 --- a/puntti/src/puntti/test/LiikkeetTest.java +++ b/puntti/src/puntti/test/LiikkeetTest.java @@ -7,7 +7,7 @@ import puntti.*; /** * Test class made by ComTest - * @version 2025.03.05 15:29:25 // Generated by ComTest + * @version 2025.04.02 09:57:48 // Generated by ComTest * */ @SuppressWarnings("all") @@ -16,31 +16,27 @@ public class LiikkeetTest { // Generated by ComTest BEGIN /** - * testLisaa40 + * testLisaa47 * @throws SailoException when error */ @Test - public void testLisaa40() throws SailoException { // Liikkeet: 40 + public void testLisaa47() throws SailoException { // Liikkeet: 47 Liikkeet liikkeet = new Liikkeet(); - Liike kyykky1 = new Liike(), kyykky2 = new Liike(); - assertEquals("From: Liikkeet line: 44", 0, liikkeet.getLkm()); - liikkeet.lisaa(kyykky1); assertEquals("From: Liikkeet line: 45", 1, liikkeet.getLkm()); - liikkeet.lisaa(kyykky2); assertEquals("From: Liikkeet line: 46", 2, liikkeet.getLkm()); - liikkeet.lisaa(kyykky1); assertEquals("From: Liikkeet line: 47", 3, liikkeet.getLkm()); - assertEquals("From: Liikkeet line: 48", kyykky1, liikkeet.anna(0)); - assertEquals("From: Liikkeet line: 49", kyykky2, liikkeet.anna(1)); - assertEquals("From: Liikkeet line: 50", kyykky1, liikkeet.anna(2)); - assertEquals("From: Liikkeet line: 51", false, liikkeet.anna(1) == kyykky1); - assertEquals("From: Liikkeet line: 52", true, liikkeet.anna(1) == kyykky2); - try { - assertEquals("From: Liikkeet line: 53", kyykky1, liikkeet.anna(3)); - fail("Liikkeet: 53 Did not throw IndexOutOfBoundsException"); - } catch(IndexOutOfBoundsException _e_){ _e_.getMessage(); } - liikkeet.lisaa(kyykky1); assertEquals("From: Liikkeet line: 54", 4, liikkeet.getLkm()); - liikkeet.lisaa(kyykky1); assertEquals("From: Liikkeet line: 55", 5, liikkeet.getLkm()); - try { - liikkeet.lisaa(kyykky1); - fail("Liikkeet: 56 Did not throw SailoException"); - } catch(SailoException _e_){ _e_.getMessage(); } + Liike kyykky1 = new Liike(), kyykky2 = new Liike(), kyykky3 = new Liike(), kyykky4 = new Liike(), kyykky5 = new Liike(), kyykky6 = new Liike(); + assertEquals("From: Liikkeet line: 51", 0, liikkeet.getLkm()); + liikkeet.lisaa(kyykky1); assertEquals("From: Liikkeet line: 52", 1, liikkeet.getLkm()); + liikkeet.lisaa(kyykky2); assertEquals("From: Liikkeet line: 53", 2, liikkeet.getLkm()); + liikkeet.lisaa(kyykky1); assertEquals("From: Liikkeet line: 54", 3, liikkeet.getLkm()); + liikkeet.lisaa(kyykky3); assertEquals("From: Liikkeet line: 55", 4, liikkeet.getLkm()); + liikkeet.lisaa(kyykky4); assertEquals("From: Liikkeet line: 56", 5, liikkeet.getLkm()); + liikkeet.lisaa(kyykky5); assertEquals("From: Liikkeet line: 57", 6, liikkeet.getLkm()); + liikkeet.lisaa(kyykky6); assertEquals("From: Liikkeet line: 58", 7, liikkeet.getLkm()); + assertEquals("From: Liikkeet line: 59", kyykky1, liikkeet.anna(0)); + assertEquals("From: Liikkeet line: 60", kyykky2, liikkeet.anna(1)); + assertEquals("From: Liikkeet line: 61", kyykky1, liikkeet.anna(2)); + assertEquals("From: Liikkeet line: 62", false, liikkeet.anna(1) == kyykky1); + assertEquals("From: Liikkeet line: 63", true, liikkeet.anna(1) == kyykky2); + liikkeet.lisaa(kyykky1); assertEquals("From: Liikkeet line: 64", 8, liikkeet.getLkm()); + liikkeet.lisaa(kyykky1); assertEquals("From: Liikkeet line: 65", 9, liikkeet.getLkm()); } // Generated by ComTest END } \ No newline at end of file diff --git a/puntti/src/puntti/test/PunttiTest.java b/puntti/src/puntti/test/PunttiTest.java index b3a8df5bd46610509249b07b10ed7cb657914344..8b9db6d71813ad45dc72aeea248989fb97286411 100644 --- a/puntti/src/puntti/test/PunttiTest.java +++ b/puntti/src/puntti/test/PunttiTest.java @@ -8,7 +8,7 @@ import puntti.*; /** * Test class made by ComTest - * @version 2025.03.11 17:55:19 // Generated by ComTest + * @version 2025.04.02 09:39:09 // Generated by ComTest * */ @SuppressWarnings("all") @@ -18,39 +18,39 @@ public class PunttiTest { // Generated by ComTest BEGIN /** - * testLisaa45 + * testLisaa48 * @throws SailoException when error */ @Test - public void testLisaa45() throws SailoException { // Puntti: 45 + public void testLisaa48() throws SailoException { // Puntti: 48 Puntti puntti = new Puntti(); Liike kyykky = new Liike(), kyykky2 = new Liike(); kyykky.lisaaLiike(); kyykky2.lisaaLiike(); - assertEquals("From: Puntti line: 50", 0, puntti.getLiikkeita()); - puntti.lisaa(kyykky); assertEquals("From: Puntti line: 51", 1, puntti.getLiikkeita()); - puntti.lisaa(kyykky2); assertEquals("From: Puntti line: 52", 2, puntti.getLiikkeita()); - puntti.lisaa(kyykky); assertEquals("From: Puntti line: 53", 3, puntti.getLiikkeita()); - assertEquals("From: Puntti line: 54", 3, puntti.getLiikkeita()); - assertEquals("From: Puntti line: 55", kyykky, puntti.annaLiike(0)); - assertEquals("From: Puntti line: 56", kyykky2, puntti.annaLiike(1)); - assertEquals("From: Puntti line: 57", kyykky, puntti.annaLiike(2)); + assertEquals("From: Puntti line: 53", 0, puntti.getLiikkeita()); + puntti.lisaa(kyykky); assertEquals("From: Puntti line: 54", 1, puntti.getLiikkeita()); + puntti.lisaa(kyykky2); assertEquals("From: Puntti line: 55", 2, puntti.getLiikkeita()); + puntti.lisaa(kyykky); assertEquals("From: Puntti line: 56", 3, puntti.getLiikkeita()); + assertEquals("From: Puntti line: 57", 3, puntti.getLiikkeita()); + assertEquals("From: Puntti line: 58", kyykky, puntti.annaLiike(0)); + assertEquals("From: Puntti line: 59", kyykky2, puntti.annaLiike(1)); + assertEquals("From: Puntti line: 60", kyykky, puntti.annaLiike(2)); try { - assertEquals("From: Puntti line: 58", kyykky, puntti.annaLiike(3)); - fail("Puntti: 58 Did not throw IndexOutOfBoundsException"); + assertEquals("From: Puntti line: 61", kyykky, puntti.annaLiike(3)); + fail("Puntti: 61 Did not throw IndexOutOfBoundsException"); } catch(IndexOutOfBoundsException _e_){ _e_.getMessage(); } - puntti.lisaa(kyykky); assertEquals("From: Puntti line: 59", 4, puntti.getLiikkeita()); - puntti.lisaa(kyykky); assertEquals("From: Puntti line: 60", 5, puntti.getLiikkeita()); + puntti.lisaa(kyykky); assertEquals("From: Puntti line: 62", 4, puntti.getLiikkeita()); + puntti.lisaa(kyykky); assertEquals("From: Puntti line: 63", 5, puntti.getLiikkeita()); try { puntti.lisaa(kyykky); - fail("Puntti: 61 Did not throw SailoException"); + fail("Puntti: 64 Did not throw SailoException"); } catch(SailoException _e_){ _e_.getMessage(); } } // Generated by ComTest END // Generated by ComTest BEGIN - /** testAnnaTulokset94 */ + /** testAnnaTulokset97 */ @Test - public void testAnnaTulokset94() { // Puntti: 94 + public void testAnnaTulokset97() { // Puntti: 97 Puntti puntti = new Puntti(); Liike kyykky = new Liike(), kyykky2 = new Liike(), kyykky3 = new Liike(); kyykky.lisaaLiike(); kyykky2.lisaaLiike(); kyykky3.lisaaLiike(); @@ -63,13 +63,13 @@ public class PunttiTest { Tulos penkki5 = new Tulos(lid2); puntti.lisaa(penkki5); List<Tulos> loytyneet; loytyneet = puntti.annaTulokset(kyykky3); - assertEquals("From: Puntti line: 110", 0, loytyneet.size()); + assertEquals("From: Puntti line: 113", 0, loytyneet.size()); loytyneet = puntti.annaTulokset(kyykky); - assertEquals("From: Puntti line: 112", 2, loytyneet.size()); - assertEquals("From: Puntti line: 113", true, loytyneet.get(0) == penkki1); - assertEquals("From: Puntti line: 114", true, loytyneet.get(1) == penkki2); + assertEquals("From: Puntti line: 115", 2, loytyneet.size()); + assertEquals("From: Puntti line: 116", true, loytyneet.get(0) == penkki1); + assertEquals("From: Puntti line: 117", true, loytyneet.get(1) == penkki2); loytyneet = puntti.annaTulokset(kyykky2); - assertEquals("From: Puntti line: 116", 3, loytyneet.size()); - assertEquals("From: Puntti line: 117", true, loytyneet.get(0) == penkki3); + assertEquals("From: Puntti line: 119", 3, loytyneet.size()); + assertEquals("From: Puntti line: 120", true, loytyneet.get(0) == penkki3); } // Generated by ComTest END } \ No newline at end of file