Skip to content
Snippets Groups Projects
Commit 319effd6 authored by tornhale's avatar tornhale
Browse files

Kirjat-luokan taulukko kasvattaa kokoaan, jos täyttyy

parent 9a8af834
No related branches found
No related tags found
No related merge requests found
......@@ -21,13 +21,10 @@ import java.util.NoSuchElementException;
* k3.parse("Hobitti3 |J.R.R. Tolkien||336");
*
*
* try {
* kirjat.lisaa(k1);
* kirjat.lisaa(k2);
* kirjat.lisaa(k3);
* } catch (SailoException e) {
* e.printStackTrace();
* }
*
* kirjat.lisaa(k1);
* kirjat.lisaa(k2);
* kirjat.lisaa(k3);
*
*
* kirjat.hae(k1.getId()).getNimi() === "Hobitti1";
......@@ -50,26 +47,26 @@ public class Kirjat {
/**
* @param kirja Lisättävä kirja
* @throws SailoException Heittää, jos lisääminen ei onnistu
* <pre name="test">
* Kirja kirja = new Kirja();
* Kirjat kirjat = new Kirjat();
* try {
* for (int i = 0; i < 8; i++) {
* kirjat.lisaa(kirja);
* kirjat.getLkm() === i + 1;
* }
* kirjat.getLkm() === 8;
* } catch (SailoException e) {
* System.out.println("Comtest heittaa virheita, jos ei ole trycatchia");
* }
* kirjat.lisaa(kirja); #THROWS SailoException
* for (int i = 0; i < 8; i++) {
* kirjat.lisaa(kirja);
* kirjat.getLkm() === i + 1;
* }
* kirjat.getLkm() === 8;
*
*
* </pre>
*/
public void lisaa(Kirja kirja) throws SailoException {
if (this.lkm >= this.alkiot.length) throw new SailoException("Liikaa alkioita");
public void lisaa(Kirja kirja) {
if (this.lkm >= this.alkiot.length) {
Kirja[] uusi = new Kirja[this.lkm * 2];
for (int i = 0; i < this.lkm; i++) {
uusi[i] = this.alkiot[i];
}
this.alkiot = uusi;
}
this.alkiot[this.lkm] = kirja;
kirja.rekisteroi();
this.lkm++;
......
......@@ -8,7 +8,7 @@ import Kirjalista.*;
/**
* Test class made by ComTest
* @version 2025.03.17 16:07:43 // Generated by ComTest
* @version 2025.03.24 10:29:11 // Generated by ComTest
*
*/
@SuppressWarnings({ "all" })
......@@ -27,54 +27,42 @@ public class KirjatTest {
k1.parse("Hobitti1 |J.R.R. Tolkien||336");
k2.parse("Hobitti2 |J.R.R. Tolkien||336");
k3.parse("Hobitti3 |J.R.R. Tolkien||336");
try {
kirjat.lisaa(k1);
kirjat.lisaa(k2);
kirjat.lisaa(k3);
} catch (SailoException e) {
e.printStackTrace();
}
assertEquals("From: Kirjat line: 33", "Hobitti1", kirjat.hae(k1.getId()).getNimi());
assertEquals("From: Kirjat line: 34", "Hobitti3", kirjat.hae(k3.getId()).getNimi());
assertEquals("From: Kirjat line: 30", "Hobitti1", kirjat.hae(k1.getId()).getNimi());
assertEquals("From: Kirjat line: 31", "Hobitti3", kirjat.hae(k3.getId()).getNimi());
try {
kirjat.hae(0);
fail("Kirjat: 35 Did not throw NoSuchElementException");
fail("Kirjat: 32 Did not throw NoSuchElementException");
} catch(NoSuchElementException _e_){ _e_.getMessage(); }
try {
kirjat.hae(5);
fail("Kirjat: 36 Did not throw NoSuchElementException");
fail("Kirjat: 33 Did not throw NoSuchElementException");
} catch(NoSuchElementException _e_){ _e_.getMessage(); }
int k2Id = k2.getId();
kirjat.poista(k2Id);
try {
kirjat.poista(0);
fail("Kirjat: 40 Did not throw NoSuchElementException");
fail("Kirjat: 37 Did not throw NoSuchElementException");
} catch(NoSuchElementException _e_){ _e_.getMessage(); }
try {
kirjat.hae(k2Id);
fail("Kirjat: 41 Did not throw NoSuchElementException");
fail("Kirjat: 38 Did not throw NoSuchElementException");
} catch(NoSuchElementException _e_){ _e_.getMessage(); }
} // Generated by ComTest END
// Generated by ComTest BEGIN
/** testLisaa54 */
/** testLisaa50 */
@Test
public void testLisaa54() { // Kirjat: 54
public void testLisaa50() { // Kirjat: 50
Kirja kirja = new Kirja();
Kirjat kirjat = new Kirjat();
try {
for (int i = 0; i < 8; i++) {
kirjat.lisaa(kirja);
assertEquals("From: Kirjat line: 60", i + 1, kirjat.getLkm());
assertEquals("From: Kirjat line: 55", i + 1, kirjat.getLkm());
}
assertEquals("From: Kirjat line: 62", 8, kirjat.getLkm());
} catch (SailoException e) {
System.out.println("Comtest heittaa virheita, jos ei ole trycatchia");
}
try {
kirjat.lisaa(kirja);
fail("Kirjat: 66 Did not throw SailoException");
} catch(SailoException _e_){ _e_.getMessage(); }
assertEquals("From: Kirjat line: 57", 8, kirjat.getLkm());
} // Generated by ComTest END
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment