diff --git a/src/de/itstall/DatumZeit.java b/src/de/itstall/DatumZeit.java index 885f5f7a404429ba4c5de09cde111149a50c5804..f9f9af209960cf2585ccefc1082bc35f2303af37 100644 --- a/src/de/itstall/DatumZeit.java +++ b/src/de/itstall/DatumZeit.java @@ -107,7 +107,7 @@ public class DatumZeit extends Datum { this.addiereTage(neueStunde / 24); this.setiStunde(neueStunde % 24); } else if (neueStunde < 0) { - this.addiereTage(neueStunde / 24 - 1); + this.addiereTage(neueStunde / 24); this.setiStunde(24 + neueStunde % 24); } else { this.setiStunde(neueStunde); @@ -125,7 +125,7 @@ public class DatumZeit extends Datum { this.addiereStunden(neueMinuten / 60); this.setiMinute(neueMinuten % 60); } else if (neueMinuten < 0) { - this.addiereStunden(neueMinuten / 60 - 1); + this.addiereStunden(neueMinuten / 60); this.setiMinute(60 + neueMinuten % 60); } else { this.setiMinute(neueMinuten); diff --git a/test/de/itstall/TestDatumZeit.java b/test/de/itstall/TestDatumZeit.java new file mode 100644 index 0000000000000000000000000000000000000000..ceb7d4176a74b0cd60ae347a7e80f3ed454b33c3 --- /dev/null +++ b/test/de/itstall/TestDatumZeit.java @@ -0,0 +1,160 @@ +package de.itstall; + +import org.junit.Test; +import static org.junit.Assert.*; + +public class TestDatumZeit { + + @Test + public void getiStunde() { + DatumZeit datumZeit = new DatumZeit(); + System.out.println("TEST: getiStunde() Hour initial should be: 0"); + assertEquals(0, datumZeit.getiStunde()); + } + + @Test + public void getiMinute() { + DatumZeit datumZeit = new DatumZeit(); + System.out.println("TEST: getiMinute() Minute initial should be: 0"); + assertEquals(0, datumZeit.getiMinute()); + } + + @Test + public void getiSekunde() { + DatumZeit datumZeit = new DatumZeit(); + System.out.println("TEST: getiSekunde() Second initial should be: 0"); + assertEquals(0, datumZeit.getiSekunde()); + } + + @Test + public void setiStunde() { + DatumZeit datumZeit = new DatumZeit(); + + System.out.println("TEST: setiStunde(10) Result should be: 10"); + datumZeit.setiStunde(10); + assertEquals(10, datumZeit.getiStunde()); + + System.out.println("TEST: setiStunde(70) Result should be: 10"); + datumZeit.setiStunde(70); + assertEquals(10, datumZeit.getiStunde()); + + System.out.println("TEST: setiStunde(-10) Result should be: 10"); + datumZeit.setiStunde(-10); + assertEquals(10, datumZeit.getiStunde()); + } + + @Test + public void setiMinute() { + DatumZeit datumZeit = new DatumZeit(); + + System.out.println("TEST: setiMinute(10) Result should be: 10"); + datumZeit.setiMinute(10); + assertEquals(10, datumZeit.getiMinute()); + + System.out.println("TEST: setiMinute(70) Result should be: 10"); + datumZeit.setiMinute(70); + assertEquals(10, datumZeit.getiMinute()); + + System.out.println("TEST: setiMinute(-10) Result should be: 10"); + datumZeit.setiMinute(-10); + assertEquals(10, datumZeit.getiMinute()); + } + + @Test + public void setiSekunde() { + DatumZeit datumZeit = new DatumZeit(); + + System.out.println("TEST: setiSekunde(10) Result should be: 10"); + datumZeit.setiSekunde(10); + assertEquals(10, datumZeit.getiSekunde()); + + System.out.println("TEST: setiSekunde(70) Result should be: 10"); + datumZeit.setiSekunde(70); + assertEquals(10, datumZeit.getiSekunde()); + + System.out.println("TEST: setiSekunde(-10) Result should be: 10"); + datumZeit.setiSekunde(-10); + assertEquals(10, datumZeit.getiSekunde()); + } + + @Test + public void testToString() { + DatumZeit datumZeit = new DatumZeit(); + + System.out.println("TEST: toString() Output should be 01.01.2000 00:00:00"); + assertEquals("01.01.2000 00:00:00", datumZeit.toString()); + + System.out.println("TEST: toString(true) Output should be 01. Januar 2000 00:00:00"); + assertEquals("01. Januar 2000 00:00:00", datumZeit.toString(true)); + + } + + @Test + public void addiereStunden() { + DatumZeit datumZeit = new DatumZeit(); + + System.out.println("TEST: addiereStunden(10) Result should be: 01.01.2000 10:00:00"); + datumZeit.addiereStunden(10); + assertEquals("01.01.2000 10:00:00", datumZeit.toString()); + + System.out.println("TEST: addiereStunden(25) Result should be: 02.01.2000 01:00:00"); + datumZeit.setiStunde(0); + datumZeit.addiereStunden(25); + assertEquals("02.01.2000 01:00:00", datumZeit.toString()); + + System.out.println("TEST: addiereStunden(-48) Result should be: 30.12.1999 00:00:00"); + datumZeit.setJahr(2000); + datumZeit.setMonat(1); + datumZeit.setTag(1); + datumZeit.setiStunde(0); + datumZeit.addiereStunden(-48); + assertEquals("30.12.1999 00:00:00", datumZeit.toString()); + } + + @Test + public void addiereMinuten() { + DatumZeit datumZeit = new DatumZeit(); + + System.out.println("TEST: addiereMinuten(10) Result should be: 01.01.2000 00:10:00"); + datumZeit.addiereMinuten(10); + assertEquals("01.01.2000 00:10:00", datumZeit.toString()); + + System.out.println("TEST: addiereMinuten(60) Result should be: 01.01.2000 01:00:00"); + datumZeit.setiMinute(0); + datumZeit.addiereMinuten(60); + assertEquals("01.01.2000 01:00:00", datumZeit.toString()); + + System.out.println("TEST: addiereMinuten(-120) Result should be: 31.12.1999 22:00:00"); + datumZeit.setJahr(2000); + datumZeit.setMonat(1); + datumZeit.setTag(1); + datumZeit.setiStunde(0); + datumZeit.setiMinute(0); + datumZeit.addiereMinuten(-120); + assertEquals("31.12.1999 22:00:00", datumZeit.toString()); + } + + @Test + public void addiereSekunden() { + DatumZeit datumZeit = new DatumZeit(); + + System.out.println("TEST: addiereSekunden(10) Result should be: 01.01.2000 00:00:10"); + datumZeit.addiereSekunden(10); + assertEquals("01.01.2000 00:00:10", datumZeit.toString()); + + System.out.println("TEST: addiereSekunden(60) Result should be: 01.01.2000 00:01:00"); + datumZeit.setiSekunde(0); + datumZeit.addiereSekunden(60); + assertEquals("01.01.2000 00:01:00", datumZeit.toString()); + + System.out.println("TEST: addiereSekunden(-120) Result should be: 31.12.1999 23:58:00"); + datumZeit.setJahr(2000); + datumZeit.setMonat(1); + datumZeit.setTag(1); + datumZeit.setiStunde(0); + datumZeit.setiMinute(0); + datumZeit.setiSekunde(0); + datumZeit.addiereSekunden(-120); + assertEquals("31.12.1999 23:58:00", datumZeit.toString()); + } +} \ No newline at end of file