From 6dbeb1fdcaa8af4a8b76798a99b70b31793beefd Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:26:08 +0100 Subject: [PATCH 01/14] main --- src/main/java/Notizbuch.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/Notizbuch.java b/src/main/java/Notizbuch.java index caffb68..7c305c2 100644 --- a/src/main/java/Notizbuch.java +++ b/src/main/java/Notizbuch.java @@ -64,4 +64,8 @@ public class Notizbuch extends JFrame implements ActionListener { JOptionPane.showMessageDialog(this, "Fehler beim Laden der Notiz: " + e.getMessage()); } } + + public static void main(String[] args) { + + } } From fd478ee5f9358fccc576e7d59a77dcf0761721d4 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:27:53 +0100 Subject: [PATCH 02/14] Swing --- src/main/java/Notizbuch.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/Notizbuch.java b/src/main/java/Notizbuch.java index 7c305c2..e866ab8 100644 --- a/src/main/java/Notizbuch.java +++ b/src/main/java/Notizbuch.java @@ -66,6 +66,8 @@ public class Notizbuch extends JFrame implements ActionListener { } public static void main(String[] args) { - + SwingUtilities.invokeLater(() -> { + + }); } } From 1a747177273b1990771b7138e323c7499ed700d8 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:28:24 +0100 Subject: [PATCH 03/14] new_Notizbuch --- src/main/java/Notizbuch.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/Notizbuch.java b/src/main/java/Notizbuch.java index e866ab8..9e8c610 100644 --- a/src/main/java/Notizbuch.java +++ b/src/main/java/Notizbuch.java @@ -67,7 +67,7 @@ public class Notizbuch extends JFrame implements ActionListener { public static void main(String[] args) { SwingUtilities.invokeLater(() -> { - + Notizbuch notizbuch = new Notizbuch(); }); } } From 32cb12cd071d058cfa245fd47e53300fda1cb1b8 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:28:45 +0100 Subject: [PATCH 04/14] setVisible --- src/main/java/Notizbuch.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/Notizbuch.java b/src/main/java/Notizbuch.java index 9e8c610..481d6ff 100644 --- a/src/main/java/Notizbuch.java +++ b/src/main/java/Notizbuch.java @@ -68,6 +68,7 @@ public class Notizbuch extends JFrame implements ActionListener { public static void main(String[] args) { SwingUtilities.invokeLater(() -> { Notizbuch notizbuch = new Notizbuch(); + notizbuch.setVisible(true); }); } } From d92996d0dcea551b630ecc0b784326ddc112da93 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:44:11 +0100 Subject: [PATCH 05/14] Test1 --- src/main/java/Notizbuch.java | 22 +++++++++++++++------- src/test/java/NotizbuchTest.java | 21 +++++++++++++++++++++ 2 files changed, 36 insertions(+), 7 deletions(-) create mode 100644 src/test/java/NotizbuchTest.java diff --git a/src/main/java/Notizbuch.java b/src/main/java/Notizbuch.java index 481d6ff..7371aae 100644 --- a/src/main/java/Notizbuch.java +++ b/src/main/java/Notizbuch.java @@ -8,7 +8,7 @@ import javax.swing.JFrame; public class Notizbuch extends JFrame implements ActionListener { - private JTextArea textArea; + JTextArea textArea; private JButton saveButton; private JButton loadButton; @@ -18,8 +18,8 @@ public class Notizbuch extends JFrame implements ActionListener { setDefaultCloseOperation(EXIT_ON_CLOSE); setLayout(new BorderLayout()); - textArea = new JTextArea(); - add(new JScrollPane(textArea), BorderLayout.CENTER); + setTextArea(new JTextArea()); + add(new JScrollPane(getTextArea()), BorderLayout.CENTER); saveButton = new JButton("Speichern"); saveButton.addActionListener(this); @@ -43,23 +43,23 @@ public class Notizbuch extends JFrame implements ActionListener { } - private void saveNote() { + public void saveNote() { try (PrintWriter writer = new PrintWriter(new FileWriter("notizen.txt"))) { - writer.print(textArea.getText()); + writer.print(getTextArea().getText()); JOptionPane.showMessageDialog(this, "Notiz erfolgreich gespeichert!"); } catch (IOException e) { JOptionPane.showMessageDialog(this, "Fehler beim Speichern der Notiz: " + e.getMessage()); } } - private void loadNote() { + public void loadNote() { try (BufferedReader reader = new BufferedReader(new FileReader("notizen.txt"))) { StringBuilder noteText = new StringBuilder(); String line; while ((line = reader.readLine()) != null) { noteText.append(line).append("\n"); } - textArea.setText(noteText.toString()); + getTextArea().setText(noteText.toString()); } catch (IOException e) { JOptionPane.showMessageDialog(this, "Fehler beim Laden der Notiz: " + e.getMessage()); } @@ -71,4 +71,12 @@ public class Notizbuch extends JFrame implements ActionListener { notizbuch.setVisible(true); }); } + + public JTextArea getTextArea() { + return textArea; + } + + public void setTextArea(JTextArea textArea) { + this.textArea = textArea; + } } diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java new file mode 100644 index 0000000..64d57e2 --- /dev/null +++ b/src/test/java/NotizbuchTest.java @@ -0,0 +1,21 @@ +import static org.junit.jupiter.api.Assertions.*; + +import org.junit.jupiter.api.Test; + +class NotizbuchTest { + + @Test + public void testSpeichernUndLaden() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("Testnotiz"); + + notizbuch.saveNote(); + + notizbuch.loadNote(); + + assertEquals("Testnotiz\n", notizbuch.textArea.getText()); + } + + + +} From c6ad0c4a2e6d4b3642ba769caf4e9712920351e3 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:46:47 +0100 Subject: [PATCH 06/14] Test2 --- src/test/java/NotizbuchTest.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index 64d57e2..7f030a0 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -15,6 +15,15 @@ class NotizbuchTest { assertEquals("Testnotiz\n", notizbuch.textArea.getText()); } + @Test + public void testSpeichernMitLeererNotiz() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText(""); + + notizbuch.saveNote(); + + assertEquals("", notizbuch.textArea.getText()); + } From 4d48be07284e6c8197b66f00faddb98372df18d0 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:55:26 +0100 Subject: [PATCH 07/14] Test3 --- src/test/java/NotizbuchTest.java | 55 +++++++++++++++++++++++++------- 1 file changed, 43 insertions(+), 12 deletions(-) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index 7f030a0..03fe964 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -5,26 +5,57 @@ import org.junit.jupiter.api.Test; class NotizbuchTest { @Test - public void testSpeichernUndLaden() { - Notizbuch notizbuch = new Notizbuch(); - notizbuch.textArea.setText("Testnotiz"); + public void testSpeichernUndLaden() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("Testnotiz"); - notizbuch.saveNote(); + notizbuch.saveNote(); + + notizbuch.loadNote(); + + assertEquals("Testnotiz\n", notizbuch.textArea.getText()); + } + + @Test + public void testSpeichernMitLeererNotiz() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText(""); + + notizbuch.saveNote(); + + assertEquals("", notizbuch.textArea.getText()); + } + + @Test + public void testLadenVonExistierenderDatei() { + // Vor dem Test sicherstellen, dass eine Datei mit Inhalt existiert + // Hier wird angenommen, dass bereits eine "notizen.txt" Datei vorhanden ist + Notizbuch notizbuch = new Notizbuch(); notizbuch.loadNote(); - assertEquals("Testnotiz\n", notizbuch.textArea.getText()); + assertNotEquals("", notizbuch.textArea.getText()); } - @Test - public void testSpeichernMitLeererNotiz() { - Notizbuch notizbuch = new Notizbuch(); - notizbuch.textArea.setText(""); +/* @Test + public void testSpeichernMitDateiSchreibfehler() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("Testnotiz"); + + // Setze die Datei als schreibgeschützt, um einen Schreibfehler zu simulieren - notizbuch.saveNote(); + notizbuch.saveNote(); - assertEquals("", notizbuch.textArea.getText()); - } + // Erwarte eine Fehlermeldung + // TODO: Implementierung einer Methode zum Einfangen von Fehlermeldungen + } + @Test + public void testLadenMitNichtExistierenderDatei() { + // Setze den Dateipfad auf einen nicht existierenden Ort + Notizbuch notizbuch = new Notizbuch(); + notizbuch.loadNote(); + assertEquals("", notizbuch.textArea.getText()); + } */ } From 845d16414cf7ebc4628b746b933c263f0f2b5cef Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:56:05 +0100 Subject: [PATCH 08/14] Test4 --- src/test/java/NotizbuchTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index 03fe964..f1febd1 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -36,7 +36,7 @@ class NotizbuchTest { assertNotEquals("", notizbuch.textArea.getText()); } -/* @Test + @Test public void testSpeichernMitDateiSchreibfehler() { Notizbuch notizbuch = new Notizbuch(); notizbuch.textArea.setText("Testnotiz"); @@ -48,7 +48,7 @@ class NotizbuchTest { // Erwarte eine Fehlermeldung // TODO: Implementierung einer Methode zum Einfangen von Fehlermeldungen } - @Test +/* @Test public void testLadenMitNichtExistierenderDatei() { // Setze den Dateipfad auf einen nicht existierenden Ort From 902490695c69865f487098101e16022af1d9b605 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:57:00 +0100 Subject: [PATCH 09/14] Test5 --- src/test/java/NotizbuchTest.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index f1febd1..937406b 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -48,14 +48,16 @@ class NotizbuchTest { // Erwarte eine Fehlermeldung // TODO: Implementierung einer Methode zum Einfangen von Fehlermeldungen } -/* @Test - public void testLadenMitNichtExistierenderDatei() { - // Setze den Dateipfad auf einen nicht existierenden Ort - + @Test + public void testSpeichernMitUmlautenUndSonderzeichen() { Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("Äpfel & Birnen €"); + + notizbuch.saveNote(); + notizbuch.loadNote(); - assertEquals("", notizbuch.textArea.getText()); - } */ + assertEquals("Äpfel & Birnen €\n", notizbuch.textArea.getText()); + } } From a2f3e5cf18ae7d3a6ccecc033f7096f47a40cd8e Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:57:33 +0100 Subject: [PATCH 10/14] Test6 --- src/test/java/NotizbuchTest.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index 937406b..f6add81 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -59,5 +59,16 @@ class NotizbuchTest { assertEquals("Äpfel & Birnen €\n", notizbuch.textArea.getText()); } + @Test + public void testSpeichernMitLeerzeichen() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("Testnotiz mit Leerzeichen"); + + notizbuch.saveNote(); + + notizbuch.loadNote(); + + assertEquals("Testnotiz mit Leerzeichen\n", notizbuch.textArea.getText()); + } } From b3234cc2e7ee85d38574c1ab5111f404090a12dc Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:58:17 +0100 Subject: [PATCH 11/14] Test7 --- src/test/java/NotizbuchTest.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index f6add81..4cc9916 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -70,5 +70,15 @@ class NotizbuchTest { assertEquals("Testnotiz mit Leerzeichen\n", notizbuch.textArea.getText()); } + @Test + public void testSpeichernUndLadenMitMehrzeiligerNotiz() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("Erste Zeile\nZweite Zeile\nDritte Zeile"); + + notizbuch.saveNote(); + notizbuch.loadNote(); + + assertEquals("Erste Zeile\nZweite Zeile\nDritte Zeile\n", notizbuch.textArea.getText()); + } } From 44eb5b8fe3a538bd5e1af8c2612be023e426a1b9 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 17:58:51 +0100 Subject: [PATCH 12/14] Test8 --- src/test/java/NotizbuchTest.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index 4cc9916..85bb613 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -81,4 +81,15 @@ class NotizbuchTest { assertEquals("Erste Zeile\nZweite Zeile\nDritte Zeile\n", notizbuch.textArea.getText()); } + @Test + public void testSpeichernUndLadenMitLeererZeile() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("\n"); + + notizbuch.saveNote(); + + notizbuch.loadNote(); + + assertEquals("\n", notizbuch.textArea.getText()); + } } From 378926ef3253c03f438d280a1613d6b7c7cbce2e Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 18:00:01 +0100 Subject: [PATCH 13/14] Test9 --- src/test/java/NotizbuchTest.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index 85bb613..9ab6482 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -92,4 +92,16 @@ class NotizbuchTest { assertEquals("\n", notizbuch.textArea.getText()); } + @Test + public void testSpeichernUndLadenMitUTF8() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("Äpfel & Birnen €"); + + notizbuch.saveNote(); + notizbuch.textArea.setText(""); // Setze den Textbereich zurück + + notizbuch.loadNote(); + + assertEquals("Äpfel & Birnen €\n", notizbuch.textArea.getText()); + } } From 9e0ecde5f5f142ee551d34547c476353f984b849 Mon Sep 17 00:00:00 2001 From: Marc Dimmerling Date: Fri, 9 Feb 2024 18:01:12 +0100 Subject: [PATCH 14/14] Test10 --- src/test/java/NotizbuchTest.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/test/java/NotizbuchTest.java b/src/test/java/NotizbuchTest.java index 9ab6482..b3f5db8 100644 --- a/src/test/java/NotizbuchTest.java +++ b/src/test/java/NotizbuchTest.java @@ -104,4 +104,16 @@ class NotizbuchTest { assertEquals("Äpfel & Birnen €\n", notizbuch.textArea.getText()); } + @Test + public void testSpeichernUndLadenMitMehrzeiligerNotiz2() { + Notizbuch notizbuch = new Notizbuch(); + notizbuch.textArea.setText("Erste Zeile\nZweite Zeile\nDritte Zeile"); + + notizbuch.saveNote(); + notizbuch.textArea.setText(""); // Setze den Textbereich zurück + + notizbuch.loadNote(); + + assertEquals("Erste Zeile\nZweite Zeile\nDritte Zeile\n", notizbuch.textArea.getText()); + } }