From d1b30e195f0ce556372d1c6cfec4a58e401ee2ef Mon Sep 17 00:00:00 2001
From: thmustap <tuomas.mustaparta@gmail.com>
Date: Mon, 29 Apr 2024 12:21:43 +0300
Subject: [PATCH] =?UTF-8?q?Korjattu=20ottelun=20luonnissa=20virhe,=20jos?=
 =?UTF-8?q?=20id:t=C3=A4=20ei=20l=C3=B6ydy?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .classpath                                   |  1 +
 Pelaajatiedot                                |  2 +-
 src/HT/fx/Karkelot.java                      | 14 +++-
 src/HT/fx/LisaaPelaajaGUIController.java     |  1 -
 src/HT/fx/Ottelu.java                        | 37 ++++++++++
 src/HT/fx/OtteluIkkunaGUIController.java     | 30 ++++++++
 src/HT/fx/Ottelut.java                       | 29 ++++----
 src/HT/fx/PadelLisaaOtteluGUIController.java | 12 +---
 src/HT/fx/PadelMainGUIController.java        | 76 +++++---------------
 src/HT/fx/PadelMainMain.java                 |  1 +
 src/HT/fx/Pelaaja.java                       | 70 ++++++++++++------
 src/HT/fx/SailoException.java                |  4 +-
 src/HT/fx/test/KarkelotTest.java             | 15 ++++
 src/HT/fx/test/OtteluTest.java               |  9 +--
 src/HT/fx/test/OttelutTest.java              |  2 +-
 src/HT/fx/test/PelaajaTest.java              | 10 +--
 src/HT/fx/test/PelaajatTest.java             | 35 ++++-----
 17 files changed, 213 insertions(+), 135 deletions(-)
 create mode 100644 src/HT/fx/test/KarkelotTest.java

diff --git a/.classpath b/.classpath
index 3af6811..152edcb 100644
--- a/.classpath
+++ b/.classpath
@@ -7,5 +7,6 @@
 		</attributes>
 	</classpathentry>
 	<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/ohj2"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/5"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/Pelaajatiedot b/Pelaajatiedot
index 6dced79..876264a 100644
--- a/Pelaajatiedot
+++ b/Pelaajatiedot
@@ -3,4 +3,4 @@
 3|Tommi|2002-04-01|920|tommi@gmail.com|0
 4|Riku|2002-03-27|970|R@luukku.fi|0
 5|Tuomas|2002-03-27|1030|tuomas@luukku.fi|0
-6|Pepe|1996-09-03|1030|pepe@ilomantsinponnistus.fi|1
+6|Petri|1996-09-04|1030|pepe@ilomantsinponnistus.fi|1
diff --git a/src/HT/fx/Karkelot.java b/src/HT/fx/Karkelot.java
index 46b6a1b..af0769d 100644
--- a/src/HT/fx/Karkelot.java
+++ b/src/HT/fx/Karkelot.java
@@ -20,7 +20,7 @@ public class Karkelot {
     }
     
     /**
-     * Poistaa pelaajat aj ottelut tietyllä luvulla
+     * Poistaa pelaajat ja ottelut tietyllä luvulla
      * @param nro , kuka poistetaan
      * @return montako poiistettiin
      */
@@ -87,6 +87,9 @@ public class Karkelot {
         return ottelut.haeOttelut();
     }
     
+    /**
+     * Päivittää pelaajien rankingit
+     */
     public void paivitaRankingit() {
         int n = 1;
         while(n<getPelaajia()) {
@@ -144,7 +147,6 @@ public class Karkelot {
         Karkelot karkelo = new Karkelot();
 
         try {
-            // kerho.lueTiedostosta("kelmit");
 
             Pelaaja aku1 = new Pelaaja(), aku2 = new Pelaaja();
             aku1.rekisteroi();
@@ -168,11 +170,19 @@ public class Karkelot {
         }
     }
 
+    /**
+     * kutsuu Ottelut-luokan poistaOttelu-metodia
+     * @param ott ottelu
+     */
     public void poistaOttelu(Ottelu ott) {
         ottelut.poistaOttelu(ott);
         
     }
     
+    /**
+     * kutsuu Pelaajat-luokan poistaPelaaja-metodia
+     * @param pel pelaaja
+     */
     public void poistaPelaaja(Pelaaja pel) {
         pelaajat.poistaPelaaja(pel);
     }
diff --git a/src/HT/fx/LisaaPelaajaGUIController.java b/src/HT/fx/LisaaPelaajaGUIController.java
index ca77814..5b82619 100644
--- a/src/HT/fx/LisaaPelaajaGUIController.java
+++ b/src/HT/fx/LisaaPelaajaGUIController.java
@@ -90,7 +90,6 @@ public class LisaaPelaajaGUIController implements ModalControllerInterface<Strin
         
         if(muok<0) {
         Pelaaja uusi = new Pelaaja(textnimi.getText(), datesyntaika.getValue() ,textsahkoposti.getText(),boolonkoauto.isSelected());
-        //uusi.vastaaAkuAnkka();
         PadelMainGUIController.LisaaPelaaja(uusi); // lisää pelaajan karkeloon
         }
         
diff --git a/src/HT/fx/Ottelu.java b/src/HT/fx/Ottelu.java
index 31b0080..2f88960 100644
--- a/src/HT/fx/Ottelu.java
+++ b/src/HT/fx/Ottelu.java
@@ -75,6 +75,9 @@ public class Ottelu {
         
     }
     
+    /**
+     * @return palauttaa pelaajan tiedot toString-muodossa
+     */
     public String getTiedot() {
         return idNro + "|" + pelaajaNro1 + "|" +pelaajaNro2 + "|" +pelaajaNro3 + "|" +pelaajaNro4 +"|" +voittajaNro1 + "|" + voittajaNro2+"|"+paivamaara+"|"+ lopputulos;
     }
@@ -141,6 +144,10 @@ public class Ottelu {
         return numerot;
     }
     
+    /**
+     * Erottelee ottelutiedot tekstitiedostosta
+     * @param sb eroteltava teksti
+     */
     public void parse(StringBuffer sb) {
         seuraavaNro++;
         idNro = Integer.parseInt(Mjonot.erota(sb,'|',false));
@@ -189,51 +196,81 @@ public class Ottelu {
     }
     
     
+    /**
+     * @return palauttaa tunnusnumeron
+     */
     public int getTunnusNro() {
        
         return idNro;
     }
 
+    /**
+     * @param pelaajaNro asettaa ensimmäisen pelaajanumeron
+     */
     public void setpelaajaNro1(int pelaajaNro) {
         pelaajaNro1 = pelaajaNro;
         
     }
 
+    /**
+     * @param pelaajaNro asettaa toisen pelaajanumeron
+     */
     public void setpelaajaNro2(int pelaajaNro) {
         pelaajaNro2 = pelaajaNro;
         
     }
 
+    /**
+     * @param pelaajaNro asettaa kolmannen pelaajanumeron
+     */
     public void setpelaajaNro3(int pelaajaNro) {
         pelaajaNro3 = pelaajaNro;
         
     }
 
+    /**
+     * @param pelaajaNro asettaa neljännen pelaajanumeron
+     */
     public void setpelaajaNro4(int pelaajaNro) {
         pelaajaNro4 = pelaajaNro;
         
     }
 
+    /**
+     * @param voittajaNro asettaa ensimmäisen voittajan numeron
+     */
     public void setvoittajaNro1(int voittajaNro) {
         voittajaNro1 = voittajaNro;
         
     }
 
+    /**
+     * @param voittajaNro asettaa toisen voittajan numeron
+     */
     public void setvoittajaNro2(int voittajaNro) {
         voittajaNro2 = voittajaNro;
         
     }
 
+    /**
+     * @param value asettaa päivämäärän
+     */
     public void setPvm(LocalDate value) {
         paivamaara = value;
         
     }
 
+    /**
+     * @param lopputulos2 asettaa lopputuloksen
+     */
     public void setLopputulos(String lopputulos2) {
         lopputulos = lopputulos2;
         
     }
     
+    /**
+     * @param i asettaa tunnusnumeron
+     */
     public void setTunnusNro(int i) {
         idNro = i;
 
diff --git a/src/HT/fx/OtteluIkkunaGUIController.java b/src/HT/fx/OtteluIkkunaGUIController.java
index f7f7014..fe54c3d 100644
--- a/src/HT/fx/OtteluIkkunaGUIController.java
+++ b/src/HT/fx/OtteluIkkunaGUIController.java
@@ -87,12 +87,23 @@ public class OtteluIkkunaGUIController implements ModalControllerInterface<Strin
     }
     //=====================================
     
+    /**
+     * @param modalityStage -
+     * @param oletus - 
+     * @return avaa ottelun lisäysikkunan
+     */
     public static String LisaaOttelu(Stage modalityStage, String oletus) {
         return ModalController.showModal(
                 PadelLisaaOtteluGUIController.class.getResource("PadelLisaaOtteluGUIView.fxml"),
                 "Lisää ottelu", modalityStage, oletus);
     }
     
+    /**
+     * @param modalityStage -
+     * @param oletus - 
+     * @param i määrittelee ketä muokataan
+     * @return avaa muokkausikkunan
+     */
     public static String muokkaaOttelu(Stage modalityStage, String oletus, int i) {
         muokattava = i-1;
         return ModalController.showModal(
@@ -100,10 +111,17 @@ public class OtteluIkkunaGUIController implements ModalControllerInterface<Strin
                 "Lisää ottelu", modalityStage, oletus);
     }
     
+    /**
+     * Tallentaa ottelut
+     * @throws SailoException -
+     */
     public void tallenna() throws SailoException {
         PadelMainGUIController.getKarkelo().talleta();
     }
 
+    /**
+     * Lisää kentät ikkunaan
+     */
     public void lisaakentat() {
         lisaatekstikentta(Joukkue1VBox);
         lisaatekstikentta(Joukkue2VBox);
@@ -111,8 +129,16 @@ public class OtteluIkkunaGUIController implements ModalControllerInterface<Strin
         lisaatekstikentta(TulosVBox);
     }
     
+    /**
+     * Muuttuja, jolla ohjelma tarkistaa muokataanko ja kertoo mitä muokataan.
+     */
     public static int muokattava = -1;
+    /**
+     * Muuttuja, joka varmistaa, ettei tuloksia syötetä liikaa.
+     */
     public static int tulossyotetty=-1;
+    
+    
     /**
      * Hakee kaikki luodun karkelon ottelut ja syöttää niiden tiedot
      * 
@@ -161,6 +187,10 @@ public class OtteluIkkunaGUIController implements ModalControllerInterface<Strin
 
     }
     
+    /**
+     * @param i haettavan pelaajan tunnusnumero
+     * @return palauttaa i:nnen pelaajan nimen
+     */
     public String haePelaaja(int i) {
         return PadelMainGUIController.getKarkelo().annaPelaaja(i).getNimi();
     }
diff --git a/src/HT/fx/Ottelut.java b/src/HT/fx/Ottelut.java
index bbb61f8..81855e7 100644
--- a/src/HT/fx/Ottelut.java
+++ b/src/HT/fx/Ottelut.java
@@ -19,13 +19,13 @@ import fi.jyu.mit.ohj2.Mjonot;
 public class Ottelut implements Iterable<Ottelu> {
 
     private final Collection<Ottelu> alkiot = new ArrayList<Ottelu>();
-    private String tiedostonNimi = "";
     
+
     /**
-     * 
+     * Tyhjä konstruktori
      */
     public Ottelut() {
-        //Ei tehdä vielä mitään.
+        
     }
     
     /**
@@ -91,6 +91,9 @@ public class Ottelut implements Iterable<Ottelu> {
         return loydetyt;
     }
 
+    /**
+     * tallentaa pelaajien tiedot ottelutietoihin
+     */
     public void talleta() {
         try (PrintStream fo = new PrintStream(new FileOutputStream("Ottelutiedot", false)))  {
             int i = 0;
@@ -100,13 +103,17 @@ public class Ottelut implements Iterable<Ottelu> {
                 i++;
                 
             }
-            //System.out.println("Heureka ! ");
+            
         } catch(FileNotFoundException ex) {
             System.err.println("Tiedosto ei aukea: " + ex.getMessage());
         }
         
     }
 
+    /**
+     * lukee ottelutiedot tiedostosta
+     * @param tiedosto luettava tiedosto
+     */
     public void lueTiedostosta(String tiedosto) {
         try (Scanner fi = new Scanner(new FileInputStream(new File(tiedosto)))) { // Jotta UTF8/ISO-8859 toimii
 
@@ -135,17 +142,13 @@ public class Ottelut implements Iterable<Ottelu> {
     }
 
 
+    /**
+     * Poistaa ottelun
+     * @param ott poistettava ottelu
+     */
     public void poistaOttelu(Ottelu ott) {
         alkiot.remove(ott);
         
     }
-    
-/*
-    public void lueTiedostosta(String tiedosto) {
-        tiedostonNimi = tiedosto + "/nimet.dat";
-        throw new SailoException("Ei osata vielä lukea tiedostoa " + tiedostonNimi);
-        
-    }
-
-  */ 
+   
 }
\ No newline at end of file
diff --git a/src/HT/fx/PadelLisaaOtteluGUIController.java b/src/HT/fx/PadelLisaaOtteluGUIController.java
index 42569af..6dcad61 100644
--- a/src/HT/fx/PadelLisaaOtteluGUIController.java
+++ b/src/HT/fx/PadelLisaaOtteluGUIController.java
@@ -43,9 +43,6 @@ public class PadelLisaaOtteluGUIController implements ModalControllerInterface<S
         stage.close();
     }
 
-    /**
-     * Tällä hetkellä ei poista mitään, vaan toimii käytännössä päivitä nappina
-     */
     @FXML void handleAlusta() {
         if(muok<0) {
             alusta(menuOsallistuja1);
@@ -136,7 +133,6 @@ public class PadelLisaaOtteluGUIController implements ModalControllerInterface<S
      * näistä ottelun main controllerin karkeloon
      */
     public void kasitteleOk() {
-        //String pvm = datesyntaika.getValue().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
         int PelaajaNro1 = menuOsallistuja1.getSelectedIndex()+1;
         int PelaajaNro2 = menuOsallistuja2.getSelectedIndex()+1;
         int PelaajaNro3 = menuOsallistuja3.getSelectedIndex()+1;
@@ -161,16 +157,14 @@ public class PadelLisaaOtteluGUIController implements ModalControllerInterface<S
             ott.setvoittajaNro2(VoittajaNro2);
             ott.setPvm(otteluPvm.getValue());
             ott.setLopputulos(lopputulos);
-            
         }
-        PadelMainGUIController.getKarkelo().paivitaRankingit();
-        
-        OtteluIkkunaGUIController.muokattava = -1;
-        
         
+        PadelMainGUIController.getKarkelo().paivitaRankingit();
         
+        OtteluIkkunaGUIController.muokattava = -1;   
     }
     
+    
     @Override
     public String getResult() {
         // TODO Auto-generated method stub
diff --git a/src/HT/fx/PadelMainGUIController.java b/src/HT/fx/PadelMainGUIController.java
index 4030329..ee386d6 100644
--- a/src/HT/fx/PadelMainGUIController.java
+++ b/src/HT/fx/PadelMainGUIController.java
@@ -82,13 +82,9 @@ public class PadelMainGUIController {
          
     }
 
+    
     @FXML void handleLisaapelaaja() {
-        //LisaaTestiPelaajat();
         handleLisaaPelaaja(null, "kanat");
-
-        
-        //LisaaPelaaja();
-        //Syotatiedot();
         lisaakentat();
         syotatiedot();
         
@@ -99,13 +95,12 @@ public class PadelMainGUIController {
         karkelo.talleta();
     }
     
-    @FXML void handleHaeTiedot() {
-        //Lukija("/Users/joonatan/kurssit/ohj2/ht/src/Pelaajatiedot");
-        
-        
+    
+    @FXML void handleHaeTiedot() {  
         syotatiedot();
     }
     
+    
     @FXML private void lisaatekstikentta(VBox boksi) {
         TextField newField = new TextField();
         boksi.getChildren().add(newField);
@@ -157,7 +152,9 @@ public class PadelMainGUIController {
                 "Lisää pelaaja", modalityStage, oletus);
     }
     
+    
     /**
+     * Poistaa kentät yhdeltä VBoxilta
      * @param boksi josta poistetaan
      */
     public void poistaKentatYhdesta(VBox boksi) {
@@ -167,8 +164,8 @@ public class PadelMainGUIController {
     
     
    /**
- * 
- */
+    * Poistaa kaikki kentät sarakkeelta.
+    */
 public void poistaKaikkiKentat() {
        poistaKentatYhdesta(NimiVbox);
        poistaKentatYhdesta(IkaVbox);
@@ -179,6 +176,7 @@ public void poistaKaikkiKentat() {
        
    }
     
+
     /**
      * Lisää tarvittavat kentät kun pelaaja luodaan
      */
@@ -191,11 +189,17 @@ public void poistaKaikkiKentat() {
         lisaaNappi(MuokkaaVbox);
     }
     
+    
+    /**
+     * Muuttuja, jolla ohjelma tarkistaa muokataanko ja kertoo ketä muokataan.
+     */
     public static int muokattava = -1;
     
     /**
      * Syöttää tiedot tekstikenttiin
      */
+    
+    
     public void syotatiedot() {
         
         int i = 0;
@@ -262,27 +266,9 @@ public void poistaKaikkiKentat() {
      */
     public void setKarkelo(Karkelot karkelo) {
         PadelMainGUIController.karkelo = karkelo;
-        //naytaJasen();
     }
 
 
-    /*
-    private void LisaaPelaaja() {
-        Pelaaja uusi = new Pelaaja();
-        uusi.rekisteroi();
-        uusi.vastaaAkuAnkka();
-        try {
-            karkelo.lisaa(uusi);
-        } catch (SailoException e) {
-            Dialogs.showMessageDialog("Ongelmia uuden luomisessa " + e.getMessage());
-            return;
-        }
-        
-        //hae(uusi.getTunnusNro());
-
-    }
-    */
-    
     /**
      * rekisteröi ja lisää parametrina annetun uuden pelaajan
      * @param uusi pelaaja
@@ -291,16 +277,12 @@ public void poistaKaikkiKentat() {
         
 
         uusi.rekisteroi();
-        //uusi.vastaaAkuAnkka();
         try {
             karkelo.lisaa(uusi);
         } catch (SailoException e) {
             Dialogs.showMessageDialog("Ongelmia uuden luomisessa " + e.getMessage());
             return;
         }
-        
-        //hae(uusi.getTunnusNro());
-
     }
     
     
@@ -313,33 +295,7 @@ public void poistaKaikkiKentat() {
         uusi.rekisteroi();
         karkelo.lisaa(uusi);
     }
-    
-    /**
-     * Lisää kahdeksan testipelaajaa
-     */
-    public static void LisaaTestiPelaajat() {
-        Pelaaja uusi = new Pelaaja("Rasse", LocalDate.of(1999, 5, 13) , "Rasse@gmail.com", false);
-        Pelaaja uusi2 = new Pelaaja("Tuomas", LocalDate.of(2001, 9, 14) , "Tuomas@gmail.com", false);
-        Pelaaja uusi3 = new Pelaaja("Joonatan", LocalDate.of(1998, 2, 24) , "Joonatan@gmail.com", true);
-        Pelaaja uusi4 = new Pelaaja("Pepe", LocalDate.of(1998, 5, 13) , "Pepe@gmail.com", true);
-        Pelaaja uusi5 = new Pelaaja("Levy", LocalDate.of(1999, 5, 13) , "Levy@gmail.com", false);
-        Pelaaja uusi6 = new Pelaaja("Robbe", LocalDate.of(1998, 3, 14) , "Robbe@gmail.com", true);
-        Pelaaja uusi7 = new Pelaaja("Riku", LocalDate.of(1998, 2, 24) , "Riku@gmail.com", true);
-        Pelaaja uusi8 = new Pelaaja("Tommi", LocalDate.of(1998, 5, 13) , "Tommi@gmail.com", true);
-        
-        LisaaPelaaja(uusi);
-        LisaaPelaaja(uusi2);
-        LisaaPelaaja(uusi3);
-        LisaaPelaaja(uusi4);
-        LisaaPelaaja(uusi5);
-        LisaaPelaaja(uusi6);
-        LisaaPelaaja(uusi7);
-        LisaaPelaaja(uusi8);
-        
-        
-        
-        
-    }
+
 
     /**
      * Palauttaa controllerin käyttämän karkelon jotta sitä voi käyttää muissa controllereissa
diff --git a/src/HT/fx/PadelMainMain.java b/src/HT/fx/PadelMainMain.java
index b403ec5..8fc2374 100644
--- a/src/HT/fx/PadelMainMain.java
+++ b/src/HT/fx/PadelMainMain.java
@@ -46,6 +46,7 @@ public class PadelMainMain extends Application {
         }
     }
 
+    
     /**
      * @param args Ei kaytossa
      */
diff --git a/src/HT/fx/Pelaaja.java b/src/HT/fx/Pelaaja.java
index 0f1996b..6e0a65c 100644
--- a/src/HT/fx/Pelaaja.java
+++ b/src/HT/fx/Pelaaja.java
@@ -92,6 +92,11 @@ public class Pelaaja {
         tulosta(new PrintStream(os));
     }
     
+    
+    /**
+     * Erottelee pelaajatiedot tekstitiedostosta
+     * @param sb luettava tiedosto
+     */
     public void parse(StringBuffer sb) {
         seuraavaNro++;
         tunnusnro =  Integer.parseInt(Mjonot.erota(sb,'|',false));
@@ -185,72 +190,97 @@ public class Pelaaja {
         return tunnusnro;
     }
     
+    /**
+     * @return Palauttaa pelaajan ratingin
+     */
     public int getRating() {
         return rating;
     }
 
+    /**
+     * @param rating Asettaa pelaajan ratingin
+     */
     public void setRating(int rating) {
         this.rating = rating;
     }
 
 
-    
     /**
-     * Testiohjelma jäsenelle.
-     * @param args ei käytössä
+     * @param text Asettaa pelaajan nimen
      */
-    public static void main(String args[]) {
-        Pelaaja aku = new Pelaaja(), aku2 = new Pelaaja();
-        aku.rekisteroi();
-        aku2.rekisteroi();
-        aku.tulosta(System.out);
-        aku.luoTesti();
-        aku.tulosta(System.out);
-
-        aku2.luoTesti();
-        aku2.tulosta(System.out);
-
-        aku2.luoTesti();
-        aku2.tulosta(System.out);
-    }
-
     public void setNimi(String text) {
         nimi = text;
         
     }
 
+    /**
+     * @param value Asettaa pelaajan syntymäajan
+     */
     public void setSyntaika(LocalDate value) {
         syntymaaika = value;
         
     }
 
+    /**
+     * @param text Asettaa pelaajan sähköpostin
+     */
     public void setSahkoposti(String text) {
         sahkoposti = text;
         
     }
 
+    /**
+     * @param selected Määrittelee onko pelaajalla autoa
+     */
     public void setOnkoauto(boolean selected) {
         auto = selected;
         
     }
 
+    /**
+     * @return palauttaa seuraavan pelaajan tunnusnumeron
+     */
     public static int getSeuraavaNro() {
         // TODO Auto-generated method stub
         return seuraavaNro;
     }
 
+    /**
+     * asettaa pelaajan tunnusnumeroksi i:n
+     * @param i pelaajan uusi tunnusnumero
+     */
     public void setTunnusNro(int i) {
         tunnusnro=i;
         
     }
 
+    /**
+     * Asettaa seuraavan pelaajan tunnusnumeroksi numeron i
+     * @param i uusi numero
+     */
     public static void setSeuraavaNro(int i) {
         seuraavaNro = i;
         
     }
+    
+    
+    /**
+     * Testiohjelma jäsenelle.
+     * @param args ei käytössä
+     */
+    public static void main(String args[]) {
+        Pelaaja aku = new Pelaaja(), aku2 = new Pelaaja();
+        aku.rekisteroi();
+        aku2.rekisteroi();
+        aku.tulosta(System.out);
+        aku.luoTesti();
+        aku.tulosta(System.out);
 
+        aku2.luoTesti();
+        aku2.tulosta(System.out);
 
-
-
+        aku2.luoTesti();
+        aku2.tulosta(System.out);
+    }
 
 }
diff --git a/src/HT/fx/SailoException.java b/src/HT/fx/SailoException.java
index 5d0562f..e3b7c85 100644
--- a/src/HT/fx/SailoException.java
+++ b/src/HT/fx/SailoException.java
@@ -2,8 +2,8 @@ package HT.fx;
 
 /**
  * Poikkeusluokka tietorakenteesta aiheutuville poikkeuksille.
- * @author Vesa Lappalainen
- * @version 1.0, 22.02.2003
+ * @author joonatan, tuomas
+ * @version 7.3.2024
  */
 public class SailoException extends Exception {
     private static final long serialVersionUID = 1L;
diff --git a/src/HT/fx/test/KarkelotTest.java b/src/HT/fx/test/KarkelotTest.java
new file mode 100644
index 0000000..5d22752
--- /dev/null
+++ b/src/HT/fx/test/KarkelotTest.java
@@ -0,0 +1,15 @@
+package HT.fx.test;
+// Generated by ComTest BEGIN
+import static org.junit.Assert.*;
+import org.junit.*;
+import HT.fx.*;
+// Generated by ComTest END
+
+/**
+ * Test class made by ComTest
+ * @version 2024.04.29 12:13:13 // Generated by ComTest
+ *
+ */
+@SuppressWarnings({ "all" })
+public class KarkelotTest {
+}
\ No newline at end of file
diff --git a/src/HT/fx/test/OtteluTest.java b/src/HT/fx/test/OtteluTest.java
index 7ed514a..03cbb8a 100644
--- a/src/HT/fx/test/OtteluTest.java
+++ b/src/HT/fx/test/OtteluTest.java
@@ -7,23 +7,24 @@ import HT.fx.*;
 
 /**
  * Test class made by ComTest
- * @version 2024.03.07 16:11:03 // Generated by ComTest
+ * @version 2024.04.29 12:13:03 // Generated by ComTest
  *
  */
 @SuppressWarnings({ "all" })
 public class OtteluTest {
 
 
+
   // Generated by ComTest BEGIN
-  /** testRekisteroi61 */
+  /** testRekisteroi112 */
   @Test
-  public void testRekisteroi61() {    // Ottelu: 61
+  public void testRekisteroi112() {    // Ottelu: 112
     Ottelu ottelu1 = new Ottelu(); 
     Ottelu ottelu2 = new Ottelu(); 
     ottelu1.rekisteroi(); 
     ottelu2.rekisteroi(); 
     int n1 = ottelu1.getIdNro(); 
     int n2 = ottelu2.getIdNro(); 
-    assertEquals("From: Ottelu line: 68", n2-n1, n1); 
+    assertEquals("From: Ottelu line: 119", n2-n1, n1); 
   } // Generated by ComTest END
 }
\ No newline at end of file
diff --git a/src/HT/fx/test/OttelutTest.java b/src/HT/fx/test/OttelutTest.java
index e8e5a80..19fb300 100644
--- a/src/HT/fx/test/OttelutTest.java
+++ b/src/HT/fx/test/OttelutTest.java
@@ -7,7 +7,7 @@ import HT.fx.*;
 
 /**
  * Test class made by ComTest
- * @version 2024.03.07 15:57:59 // Generated by ComTest
+ * @version 2024.04.29 12:13:20 // Generated by ComTest
  *
  */
 @SuppressWarnings({ "all" })
diff --git a/src/HT/fx/test/PelaajaTest.java b/src/HT/fx/test/PelaajaTest.java
index 35d2cb5..162291b 100644
--- a/src/HT/fx/test/PelaajaTest.java
+++ b/src/HT/fx/test/PelaajaTest.java
@@ -7,7 +7,7 @@ import HT.fx.*;
 
 /**
  * Test class made by ComTest
- * @version 2024.03.07 15:31:57 // Generated by ComTest
+ * @version 2024.04.29 12:13:32 // Generated by ComTest
  *
  */
 @SuppressWarnings({ "all" })
@@ -16,16 +16,16 @@ public class PelaajaTest {
 
 
   // Generated by ComTest BEGIN
-  /** testRekisteroi68 */
+  /** testRekisteroi168 */
   @Test
-  public void testRekisteroi68() {    // Pelaaja: 68
+  public void testRekisteroi168() {    // Pelaaja: 168
     Pelaaja aku1 = new Pelaaja(); 
-    assertEquals("From: Pelaaja line: 70", 0, aku1.getTunnusNro()); 
+    assertEquals("From: Pelaaja line: 170", 0, aku1.getTunnusNro()); 
     aku1.rekisteroi(); 
     Pelaaja aku2 = new Pelaaja(); 
     aku2.rekisteroi(); 
     int n1 = aku1.getTunnusNro(); 
     int n2 = aku2.getTunnusNro(); 
-    assertEquals("From: Pelaaja line: 76", n2-1, n1); 
+    assertEquals("From: Pelaaja line: 176", n2-1, n1); 
   } // Generated by ComTest END
 }
\ No newline at end of file
diff --git a/src/HT/fx/test/PelaajatTest.java b/src/HT/fx/test/PelaajatTest.java
index 332d9ae..6abe785 100644
--- a/src/HT/fx/test/PelaajatTest.java
+++ b/src/HT/fx/test/PelaajatTest.java
@@ -7,40 +7,41 @@ import HT.fx.*;
 
 /**
  * Test class made by ComTest
- * @version 2024.03.07 15:44:17 // Generated by ComTest
+ * @version 2024.04.29 12:13:39 // Generated by ComTest
  *
  */
 @SuppressWarnings({ "all" })
 public class PelaajatTest {
 
 
+
   // Generated by ComTest BEGIN
   /** 
-   * testLisaa20 
+   * testLisaa36 
    * @throws SailoException when error
    */
   @Test
-  public void testLisaa20() throws SailoException {    // Pelaajat: 20
+  public void testLisaa36() throws SailoException {    // Pelaajat: 36
     Pelaajat pelaajat = new Pelaajat(); 
     Pelaaja aku1 = new Pelaaja(), aku2 = new Pelaaja(); 
-    assertEquals("From: Pelaajat line: 24", 0, pelaajat.getLkm()); 
-    pelaajat.lisaa(aku1); assertEquals("From: Pelaajat line: 25", 1, pelaajat.getLkm()); 
-    pelaajat.lisaa(aku2); assertEquals("From: Pelaajat line: 26", 2, pelaajat.getLkm()); 
-    pelaajat.lisaa(aku1); assertEquals("From: Pelaajat line: 27", 3, pelaajat.getLkm()); 
-    assertEquals("From: Pelaajat line: 28", aku1, pelaajat.anna(0)); 
-    assertEquals("From: Pelaajat line: 29", aku2, pelaajat.anna(1)); 
-    assertEquals("From: Pelaajat line: 30", aku1, pelaajat.anna(2)); 
-    assertEquals("From: Pelaajat line: 31", false, pelaajat.anna(1) == aku1); 
-    assertEquals("From: Pelaajat line: 32", true, pelaajat.anna(1) == aku2); 
+    assertEquals("From: Pelaajat line: 40", 0, pelaajat.getLkm()); 
+    pelaajat.lisaa(aku1); assertEquals("From: Pelaajat line: 41", 1, pelaajat.getLkm()); 
+    pelaajat.lisaa(aku2); assertEquals("From: Pelaajat line: 42", 2, pelaajat.getLkm()); 
+    pelaajat.lisaa(aku1); assertEquals("From: Pelaajat line: 43", 3, pelaajat.getLkm()); 
+    assertEquals("From: Pelaajat line: 44", aku1, pelaajat.anna(0)); 
+    assertEquals("From: Pelaajat line: 45", aku2, pelaajat.anna(1)); 
+    assertEquals("From: Pelaajat line: 46", aku1, pelaajat.anna(2)); 
+    assertEquals("From: Pelaajat line: 47", false, pelaajat.anna(1) == aku1); 
+    assertEquals("From: Pelaajat line: 48", true, pelaajat.anna(1) == aku2); 
     try {
-    assertEquals("From: Pelaajat line: 33", aku1, pelaajat.anna(3)); 
-    fail("Pelaajat: 33 Did not throw IndexOutOfBoundsException");
+    assertEquals("From: Pelaajat line: 49", aku1, pelaajat.anna(3)); 
+    fail("Pelaajat: 49 Did not throw IndexOutOfBoundsException");
     } catch(IndexOutOfBoundsException _e_){ _e_.getMessage(); }
-    pelaajat.lisaa(aku1); assertEquals("From: Pelaajat line: 34", 4, pelaajat.getLkm()); 
-    pelaajat.lisaa(aku1); assertEquals("From: Pelaajat line: 35", 5, pelaajat.getLkm()); 
+    pelaajat.lisaa(aku1); assertEquals("From: Pelaajat line: 50", 4, pelaajat.getLkm()); 
+    pelaajat.lisaa(aku1); assertEquals("From: Pelaajat line: 51", 5, pelaajat.getLkm()); 
     try {
     pelaajat.lisaa(aku1); 
-    fail("Pelaajat: 36 Did not throw SailoException");
+    fail("Pelaajat: 52 Did not throw SailoException");
     } catch(SailoException _e_){ _e_.getMessage(); }
   } // Generated by ComTest END
 }
\ No newline at end of file
-- 
GitLab