diff --git a/app/src/androidTest/java/com/simplemobiletools/calculator/MainActivityTest.java b/app/src/androidTest/java/com/simplemobiletools/calculator/MainActivityTest.java index c64bd65a..0b52de1a 100644 --- a/app/src/androidTest/java/com/simplemobiletools/calculator/MainActivityTest.java +++ b/app/src/androidTest/java/com/simplemobiletools/calculator/MainActivityTest.java @@ -42,6 +42,22 @@ public class MainActivityTest { checkResult("5"); } + @Test + public void clearComplexTest(){ + press(R.id.btn_1); + press(R.id.btn_plus); + press(R.id.btn_1); + press(R.id.btn_decimal); + press(R.id.btn_5); + press(R.id.btn_5); + press(R.id.btn_clear); + press(R.id.btn_1); + press(R.id.btn_equals); + checkResult("2.51"); + checkFormula("1+1.51"); + } + + @Test public void additionTest() { press(R.id.btn_minus); diff --git a/app/src/main/kotlin/com/simplemobiletools/calculator/helpers/CalculatorImpl.kt b/app/src/main/kotlin/com/simplemobiletools/calculator/helpers/CalculatorImpl.kt index 9551c73a..e28c8d2a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calculator/helpers/CalculatorImpl.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calculator/helpers/CalculatorImpl.kt @@ -13,7 +13,6 @@ class CalculatorImpl(calculator: Calculator, val context: Context) { private var mIsFirstOperation = false private var mResetValue = false - private var mWasPercentLast = false private var mBaseValue = 0.0 private var mSecondValue = 0.0 @@ -62,9 +61,6 @@ class CalculatorImpl(calculator: Calculator, val context: Context) { setFormula(first + sign) } else if (!sign.isEmpty()) { var formula = first + sign + second - if (mWasPercentLast) { - formula += "%" - } setFormula(formula) } } @@ -111,9 +107,6 @@ class CalculatorImpl(calculator: Calculator, val context: Context) { private fun calculateResult() { updateFormula() - if (mWasPercentLast) { - mSecondValue *= mBaseValue / 100 - } val operation = OperationFactory.forId(mLastOperation!!, mBaseValue, mSecondValue) if (operation != null) { @@ -124,7 +117,6 @@ class CalculatorImpl(calculator: Calculator, val context: Context) { } fun handleOperation(operation: String) { - mWasPercentLast = operation == PERCENT if (lastKey == DIGIT && operation != ROOT && operation != FACTORIAL) { handleResult() } @@ -161,7 +153,6 @@ class CalculatorImpl(calculator: Calculator, val context: Context) { newValue = newValue.replace("\\.$".toRegex(), "") newValue = formatString(newValue) setValue(newValue) - mBaseValue = Formatter.stringToDouble(newValue) } }