/// <summary> /// Methode FuehreImmerGleicheSchritteDurch() greift auf model und view zu, um Berechnungen /// Ein- und Ausgaben durchzuführen /// </summary> /// // diese Schritte sind laufen immer ab, unabhängig von 1. oder nachfolgender Eingabe public void FuehreImmerGleicheSchritteDurch() { // Berechnungen durchführen model.Berechne(); // Ausgabe vom Ergebnis aus der Berechnung view.GibResultatAus(); // Nächsten Wert holen oder 'FERTIG' für Beenden view.HoleFortlaufendeEingabenVomBenutzer(); }
public void Ausführen() { console.HoleErsteBenutzerEingaben(); do { model.Berechne(); console.GebeResultatAus(); console.HoleWeitereBenutzerEingabe(); } while (!console.BenutzerWillBeenden); }
public void Berechne_Subtraktion_Ergibt() { RechnerModel model = new RechnerModel(); model.Operation = "-"; model.ErsteZahl = 100.50; model.ZweiteZahl = 200.50; model.Berechne(); Assert.AreEqual(-100, model.Resultat); }
public void Berechne_Multiplikation_Ergibt() { RechnerModel model = new RechnerModel(); model.Operation = "*"; model.ErsteZahl = 112.21; model.ZweiteZahl = 3; model.Berechne(); Assert.AreEqual(336.63, model.Resultat); }
public void Berechne_Addition_Ergibt() { RechnerModel model = new RechnerModel(); model.Operation = "+"; model.ErsteZahl = 112.21; model.ZweiteZahl = 10.50; model.Berechne(); Assert.AreEqual(122.71, model.Resultat); }
public void BerechneTest_DivisionDurchNull_ergibtZero() { RechnerModel model = new RechnerModel(); model.Operation = "/"; model.ErsteZahl = 10; model.ZweiteZahl = 0; model.Berechne(); Assert.AreEqual(0, model.Resultat); }
public void Berechne_DivisiondurchNull_ErgibtUnendlich() { RechnerModel model = new RechnerModel { ErsteZahl = -10, Operation = "/", ZweiteZahl = 0 }; model.Berechne(); Assert.IsTrue(model.Resultat == double.PositiveInfinity || model.Resultat == double.NegativeInfinity); }
public void Berechne_DivisionDurchNull_ErgibtUnendlich() { RechnerModel model = new RechnerModel(); model.Operation = "/"; model.ErsteZahl = 10; model.ZweiteZahl = 0; model.Berechne(); Assert.AreEqual(Double.PositiveInfinity, model.Resultat); }
public void Test_Berechne_FalscherOperator() { // Arrange model.Operation = "x"; model.ErsteZahl = 8; model.ZweiteZahl = 4; // Act try { model.Berechne(); } catch (ArgumentException ex) { //Assert Assert.AreEqual("Gültige Operatoren sind (+ | - | * | / )", ex.Message); throw; } }
public void Ausfuehren() { view.HoleEingabenFuerBerechnungVomBenutzer(true); //model.Berechne(); //view.GibResultatAus(); //view.HoleEingabenFuerBerechnungVomBenutzer(); while (!(model.AktuellerStatus == Status.BeendigungDurchBenutzer)) { model.Berechne(); view.GibResultatAus(); view.HoleEingabenFuerBerechnungVomBenutzer(); } }
[TestMethod()] ///Attribute um testmethode zu erstellen ///Die Änderungen an der Datei Taschenrechner.sln zeigen was Visual Studio an der Solution ändert um das neue Projekt für die Unittests ///(TaschenrechnerTests) hinzuzufügen. /// ///public void Berechne_DivisionDurchNull_ergibtNaN() // NaN = Not A Number public void Berechne_DivisionDurchNull_ergibtUnendlich() { //als erstes die Klassen und Methoden vorbereiten RechnerModel model = new RechnerModel(); //dann die gebrauchten Parameter, in diesem Fall Zahlen und Operation model.Operation = "/"; model.ErsteZahl = 10; model.ZweiteZahl = 0; // und das was wir ausfuehren bzw testen wollen model.Berechne(); /// Assert ist ein Objekt die viele Methoden hat um Resultat zu UEberpruefen /// oft wird AreEquel benutzt um das erwartete wert mit den Ergebniss von unsere Methode zu vergleichen. ///Assert.AreEqual(Double.NaN, model.Resultat); Assert.AreEqual(Double.PositiveInfinity, model.Resultat); // es ergab error, beim Lehrer Beispiel hat es direkt geklappt (ich hatte schon das durch null vermieden. // Assert.AreEqual(0, model.Resultat); }