From ef9ea41b38dc4311c9f762c187cc9e3cead36bb9 Mon Sep 17 00:00:00 2001 From: Christian Baltzer Date: Sun, 14 Jul 2019 16:41:34 +0200 Subject: [PATCH] Blockchain abgeschlossen MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Tests verbessert Tests grün Logik geschrieben --- .../java/ugsbo/com/buchhaltung/Block.java | 34 ++++++++++++++++--- .../ugsbo/com/buchhaltung/Blockchain.java | 14 ++++++-- .../ugsbo/Buchhaltung/Test_Blockchain.java | 14 ++++++++ 3 files changed, 55 insertions(+), 7 deletions(-) diff --git a/src/main/java/ugsbo/com/buchhaltung/Block.java b/src/main/java/ugsbo/com/buchhaltung/Block.java index ecf4bd7..3904106 100644 --- a/src/main/java/ugsbo/com/buchhaltung/Block.java +++ b/src/main/java/ugsbo/com/buchhaltung/Block.java @@ -4,6 +4,7 @@ import java.security.MessageDigest; public class Block { + int data; int kontostand; Block vorher; @@ -11,14 +12,39 @@ public class Block { String ownHash; String previousHash; - public Block(int Data) { - data = Data; - vorher = null; + public Block(int data, Block vorher, String previousHash, int konto) { + this.data = data; ownHash = createNewHash(); - previousHash = null; + + kontostand = konto + this.data; + + this.vorher = vorher; + this.previousHash = previousHash; + } + + public Block(int data) { + this.data = data; + ownHash = createNewHash(); + + kontostand = this.data; + + this.vorher = null; + this.previousHash = null; } private String createNewHash() { return null; } + + public int getKontostand() { + return kontostand; + } + + public Block getVorher() { + return vorher; + } + + public String getHash() { + return ownHash; + } } diff --git a/src/main/java/ugsbo/com/buchhaltung/Blockchain.java b/src/main/java/ugsbo/com/buchhaltung/Blockchain.java index 427346c..4f323bf 100644 --- a/src/main/java/ugsbo/com/buchhaltung/Blockchain.java +++ b/src/main/java/ugsbo/com/buchhaltung/Blockchain.java @@ -2,23 +2,31 @@ package ugsbo.com.buchhaltung; public class Blockchain { - Block erster; + Block Workingobjekt; public Blockchain() { - erster = new Block(0); + Workingobjekt = new Block(0); } public void add(int eingabe) { // TODO Auto-generated method stub + Block newWorkingobjekt = new Block(eingabe, Workingobjekt, Workingobjekt.getHash(), Workingobjekt.getKontostand()); + Workingobjekt = newWorkingobjekt; } public int kontostand() { // TODO Auto-generated method stub - return 0; + return Workingobjekt.getKontostand(); + } + + public String toString() { + + + return null; } diff --git a/src/test/java/com/ugsbo/Buchhaltung/Test_Blockchain.java b/src/test/java/com/ugsbo/Buchhaltung/Test_Blockchain.java index ee2d14a..77f1a83 100644 --- a/src/test/java/com/ugsbo/Buchhaltung/Test_Blockchain.java +++ b/src/test/java/com/ugsbo/Buchhaltung/Test_Blockchain.java @@ -46,4 +46,18 @@ public class Test_Blockchain { assertEquals("eingabe und Ergebnis sind gleich", eingabe, ergebnis); } + + @Test + public void hinzufügenMehrAlsEinmal() { + int eingabe = 100; + int erwartet = 300; + int ergebnis; + + Workingobjekt.add(eingabe); + Workingobjekt.add(eingabe); + Workingobjekt.add(eingabe); + ergebnis = Workingobjekt.kontostand(); + + assertEquals("eingabe und Ergebnis sind gleich", erwartet, ergebnis); + } }