diff options
| -rw-r--r-- | src/de/fhswf/in/inf/upnfx/view/MainViewController.java | 40 | ||||
| -rw-r--r-- | test/gui/CalculatorTest.java | 35 |
2 files changed, 49 insertions, 26 deletions
diff --git a/src/de/fhswf/in/inf/upnfx/view/MainViewController.java b/src/de/fhswf/in/inf/upnfx/view/MainViewController.java index 76ab51a..9f6b5b4 100644 --- a/src/de/fhswf/in/inf/upnfx/view/MainViewController.java +++ b/src/de/fhswf/in/inf/upnfx/view/MainViewController.java @@ -101,17 +101,21 @@ public class MainViewController @FXML private void initialize() { - txtField.textProperty().addListener(e -> { - btnComma.setDisable(newNumber.isEmpty().get() || newNumber.get().contains(".")); - btnZero.setDisable(!newNumber.isEmpty().get() && !newNumber.get().contains(".") && newNumber.get().startsWith("0")); - }); + txtField.textProperty().addListener( + e -> { + btnComma.setDisable(newNumber.isEmpty().get() + || newNumber.get().contains(".")); + btnZero.setDisable(!newNumber.isEmpty().get() + && !newNumber.get().contains(".") + && newNumber.get().startsWith("0")); + }); newNumber.addListener(e -> { - if(upnStack.isEmpty()) + if (upnStack.isEmpty()) { txtField.clear(); } - if(!newNumber.isEmpty().get()) + if (!newNumber.isEmpty().get()) { txtField.setText(newNumber.get()); @@ -133,7 +137,7 @@ public class MainViewController upnStack.sizeProperty().addListener(e -> { txtField.clear(); - if(upnStack.size() > 0) + if (upnStack.size() > 0) { txtField.setText(upnStack.peek().toString()); } @@ -160,7 +164,7 @@ public class MainViewController { if (!newNumber.isEmpty().get()) { - if(newNumber.get().contains("-")) + if (newNumber.get().contains("-")) { newNumber.setValue(newNumber.get().replaceAll("-", "")); } @@ -171,7 +175,7 @@ public class MainViewController } else { - if(upnStack.size() > 0) + if (upnStack.size() > 0) { upnClass.addDouble(-1.0); upnClass.calculate(operators.get("*")); @@ -189,16 +193,13 @@ public class MainViewController @FXML private void handleClx() { - if (newNumber.isEmpty().get()) + if (!newNumber.isEmpty().get()) { - if(upnStack.size() > 0) - { - upnStack.pop(); - } + handleEnt(); } - else + if (upnStack.size() > 0) { - newNumber.setValue(""); + upnStack.pop(); } } @@ -211,7 +212,7 @@ public class MainViewController @FXML private void handleXY() { - if(!newNumber.isEmpty().get()) + if (!newNumber.isEmpty().get()) { handleEnt(); } @@ -222,7 +223,7 @@ public class MainViewController @FXML private void handleEnt() { - if(!newNumber.isEmpty().get()) + if (!newNumber.isEmpty().get()) { upnClass.addDouble(Double.parseDouble(newNumber.get().trim())); newNumber.setValue(""); @@ -231,7 +232,7 @@ public class MainViewController private void handleNumber(String number) { - if(newNumber.get().equals("0") && !number.equals(".")) + if (newNumber.get().equals("0") && !number.equals(".")) { newNumber.set(number); } @@ -319,7 +320,6 @@ public class MainViewController upnClass.calculate(operators.get("/")); } - private void handleOp(Operator operator) { if (!newNumber.isEmpty().get()) diff --git a/test/gui/CalculatorTest.java b/test/gui/CalculatorTest.java index 77d3371..98c6516 100644 --- a/test/gui/CalculatorTest.java +++ b/test/gui/CalculatorTest.java @@ -15,6 +15,7 @@ import static org.loadui.testfx.Assertions.verifyThat; import static org.loadui.testfx.controls.Commons.hasText; import java.io.IOException; + import javafx.fxml.FXMLLoader; import javafx.scene.Parent; import javafx.scene.control.Button; @@ -29,9 +30,8 @@ public class CalculatorTest extends GuiTest { try { - return FXMLLoader - .load(CalculatorTest.class - .getResource("/de/fhswf/in/inf/upnfx/view/MainView.fxml")); + return FXMLLoader.load(CalculatorTest.class + .getResource("/de/fhswf/in/inf/upnfx/view/MainView.fxml")); } catch (IOException e) { @@ -44,15 +44,12 @@ public class CalculatorTest extends GuiTest { Button button = find("#0"); click(button); - button = find("#0"); click(button); button = find("#,"); click(button); - button = find("#,"); click(button); button = find("#0"); click(button); - button = find("#0"); click(button); button = find("#1"); click(button); @@ -60,6 +57,32 @@ public class CalculatorTest extends GuiTest } @Test + public void testClx() + { + Button button = find("#1"); + click(button); + button = find("#2"); + click(button); + button = find("#3"); + click(button); + button = find("#ENT"); + click(button); + verifyThat("#display", hasText("123.0")); + button = find("#4"); + click(button); + button = find("#5"); + click(button); + button = find("#6"); + click(button); + verifyThat("#display", hasText("456")); + button = find("#CLX"); + click(button); + verifyThat("#display", hasText("123.0")); + click(button); + verifyThat("#display", hasText("")); + } + + @Test public void testNumbers() { Button button = find("#0"); |
