CalculatorLocatorImpl -> Locator

This commit is contained in:
Sergey Solovyev
2012-11-21 12:01:57 +04:00
parent d59f7b8b50
commit 77167e366c
70 changed files with 261 additions and 263 deletions

View File

@@ -11,8 +11,8 @@ import org.solovyev.android.calculator.history.CalculatorHistory;
public class AbstractCalculatorTest {
protected void setUp() throws Exception {
CalculatorLocatorImpl.getInstance().init(new CalculatorImpl(), CalculatorTestUtils.newCalculatorEngine(), Mockito.mock(CalculatorClipboard.class), Mockito.mock(CalculatorNotifier.class), Mockito.mock(CalculatorHistory.class), new SystemOutCalculatorLogger(), Mockito.mock(CalculatorPreferenceService.class), Mockito.mock(CalculatorKeyboard.class));
CalculatorLocatorImpl.getInstance().getEngine().init();
Locator.getInstance().init(new CalculatorImpl(), CalculatorTestUtils.newCalculatorEngine(), Mockito.mock(CalculatorClipboard.class), Mockito.mock(CalculatorNotifier.class), Mockito.mock(CalculatorHistory.class), new SystemOutCalculatorLogger(), Mockito.mock(CalculatorPreferenceService.class), Mockito.mock(CalculatorKeyboard.class));
Locator.getInstance().getEngine().init();
}
}

View File

@@ -18,7 +18,7 @@ public class CalculatorEditorImplTest extends AbstractCalculatorTest {
@Before
public void setUp() throws Exception {
super.setUp();
this.calculatorEditor = new CalculatorEditorImpl(CalculatorLocatorImpl.getInstance().getCalculator());
this.calculatorEditor = new CalculatorEditorImpl(Locator.getInstance().getCalculator());
}
@Test

View File

@@ -23,8 +23,8 @@ public class CalculatorTestUtils {
public static final int TIMEOUT = 3;
public static void staticSetUp() throws Exception {
CalculatorLocatorImpl.getInstance().init(new CalculatorImpl(), newCalculatorEngine(), Mockito.mock(CalculatorClipboard.class), Mockito.mock(CalculatorNotifier.class), Mockito.mock(CalculatorHistory.class), new SystemOutCalculatorLogger(), Mockito.mock(CalculatorPreferenceService.class), Mockito.mock(CalculatorKeyboard.class));
CalculatorLocatorImpl.getInstance().getEngine().init();
Locator.getInstance().init(new CalculatorImpl(), newCalculatorEngine(), Mockito.mock(CalculatorClipboard.class), Mockito.mock(CalculatorNotifier.class), Mockito.mock(CalculatorHistory.class), new SystemOutCalculatorLogger(), Mockito.mock(CalculatorPreferenceService.class), Mockito.mock(CalculatorKeyboard.class));
Locator.getInstance().getEngine().init();
}
@NotNull
@@ -46,9 +46,9 @@ public class CalculatorTestUtils {
}
public static void assertEval(@NotNull String expected, @NotNull String expression, @NotNull JsclOperation operation) {
final Calculator calculator = CalculatorLocatorImpl.getInstance().getCalculator();
final Calculator calculator = Locator.getInstance().getCalculator();
CalculatorLocatorImpl.getInstance().getDisplay().setViewState(CalculatorDisplayViewStateImpl.newDefaultInstance());
Locator.getInstance().getDisplay().setViewState(CalculatorDisplayViewStateImpl.newDefaultInstance());
final CountDownLatch latch = new CountDownLatch(1);
final TestCalculatorEventListener calculatorEventListener = new TestCalculatorEventListener(latch);
@@ -145,9 +145,9 @@ public class CalculatorTestUtils {
}
public static void assertError(@NotNull String expression, @NotNull JsclOperation operation) {
final Calculator calculator = CalculatorLocatorImpl.getInstance().getCalculator();
final Calculator calculator = Locator.getInstance().getCalculator();
CalculatorLocatorImpl.getInstance().getDisplay().setViewState(CalculatorDisplayViewStateImpl.newDefaultInstance());
Locator.getInstance().getDisplay().setViewState(CalculatorDisplayViewStateImpl.newDefaultInstance());
final CountDownLatch latch = new CountDownLatch(1);
final TestCalculatorEventListener calculatorEventListener = new TestCalculatorEventListener(latch);

View File

@@ -28,22 +28,22 @@ public class FromJsclSimplifyTextProcessorTest extends AbstractCalculatorTest {
//Assert.assertEquals("((e)(e))", tp.process("((2.718281828459045)*(2.718281828459045))"));
DecimalFormatSymbols decimalGroupSymbols = new DecimalFormatSymbols();
decimalGroupSymbols.setGroupingSeparator(' ');
CalculatorLocatorImpl.getInstance().getEngine().setDecimalGroupSymbols(decimalGroupSymbols);
Locator.getInstance().getEngine().setDecimalGroupSymbols(decimalGroupSymbols);
//Assert.assertEquals("123 456 789e", tp.process("123456789*2.718281828459045"));
//Assert.assertEquals("123 456 789e", tp.process("123 456 789 * 2.718281828459045"));
//Assert.assertEquals("t11e", tp.process("t11*2.718281828459045"));
//Assert.assertEquals("e", tp.process("2.718281828459045"));
//Assert.assertEquals("tee", tp.process("t2.718281828459045*2.718281828459045"));
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t2.718281828459045", "2"));
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", (String)null));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t2.718281828459045", "2"));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", (String)null));
//Assert.assertEquals("t2.718281828459045e", tp.process("t2.718281828459045*2.718281828459045"));
//Assert.assertEquals("ee", tp.process("2.718281828459045*2.718281828459045"));
Assert.assertEquals("t×", tp.process("t*"));
Assert.assertEquals("×t", tp.process("*t"));
Assert.assertEquals("t2", tp.process("t*2"));
Assert.assertEquals("2t", tp.process("2*t"));
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", (String) null));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", (String) null));
Assert.assertEquals("t×", tp.process("t*"));
Assert.assertEquals("×t", tp.process("*t"));
@@ -56,7 +56,7 @@ public class FromJsclSimplifyTextProcessorTest extends AbstractCalculatorTest {
Assert.assertEquals("t^[2×2t]", tp.process("t^[2*2*t]"));
Assert.assertEquals("2t^2[2t]", tp.process("2*t^2[2*t]"));
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("k", (String) null));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("k", (String) null));
Assert.assertEquals("(t+2k)[k+2t]", tp.process("(t+2*k)*[k+2*t]"));
Assert.assertEquals("(te+2k)e[k+2te]", tp.process("(t*e+2*k)*e*[k+2*t*e]"));

View File

@@ -6,7 +6,7 @@ import org.junit.BeforeClass;
import org.junit.Test;
import org.solovyev.android.calculator.CalculatorDisplayViewStateImpl;
import org.solovyev.android.calculator.CalculatorEditorViewStateImpl;
import org.solovyev.android.calculator.CalculatorLocatorImpl;
import org.solovyev.android.calculator.Locator;
import org.solovyev.android.calculator.CalculatorTestUtils;
import java.util.List;
@@ -25,7 +25,7 @@ public class CalculatorHistoryImplTest {
@Test
public void testGetStates() throws Exception {
CalculatorHistory calculatorHistory = new CalculatorHistoryImpl(CalculatorLocatorImpl.getInstance().getCalculator());
CalculatorHistory calculatorHistory = new CalculatorHistoryImpl(Locator.getInstance().getCalculator());
addState(calculatorHistory, "1");
addState(calculatorHistory, "12");

View File

@@ -18,8 +18,8 @@ import junit.framework.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
import org.solovyev.android.calculator.AbstractCalculatorTest;
import org.solovyev.android.calculator.Locator;
import org.solovyev.android.calculator.CalculatorEvalException;
import org.solovyev.android.calculator.CalculatorLocatorImpl;
import org.solovyev.android.calculator.CalculatorTestUtils;
import org.solovyev.android.calculator.jscl.JsclOperation;
@@ -40,13 +40,13 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@BeforeClass
public static void staticSetUp() throws Exception {
CalculatorTestUtils.staticSetUp();
CalculatorLocatorImpl.getInstance().getEngine().setPrecision(3);
Locator.getInstance().getEngine().setPrecision(3);
}
@Test
public void testDegrees() throws Exception {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
final AngleUnit defaultAngleUnit = cm.getAngleUnits();
try {
@@ -67,7 +67,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
/* @Test
public void testLongExecution() throws Exception {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
try {
cm.evaluate( "3^10^10^10");
@@ -110,7 +110,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@Test
public void testEvaluate() throws Exception {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
CalculatorTestUtils.assertEval("cos(t)+10%", "cos(t)+10%", JsclOperation.simplify);
@@ -171,7 +171,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
CalculatorTestUtils.assertError("(-1)i!");
CalculatorTestUtils.assertEval("24i", "4!i");
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("si", 5d));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("si", 5d));
try {
cm.setAngleUnits(AngleUnit.rad);
@@ -185,14 +185,14 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
cm.setAngleUnits(defaultAngleUnit);
}
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("s", 1d));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("s", 1d));
CalculatorTestUtils.assertEval("5", cm.evaluate( "si"));
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("k", 3.5d));
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("k1", 4d));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("k", 3.5d));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("k1", 4d));
CalculatorTestUtils.assertEval("4", "k11");
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", (String) null));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", (String) null));
CalculatorTestUtils.assertEval("11t", "t11");
CalculatorTestUtils.assertEval("11et", "t11e");
CalculatorTestUtils.assertEval("", "");
@@ -238,10 +238,10 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
cm.setTimeout(3000);
}*/
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", (String) null));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", (String) null));
CalculatorTestUtils.assertEval("2t", "∂(t^2,t)", JsclOperation.simplify);
CalculatorTestUtils.assertEval("2t", "∂(t^2,t)");
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", "2"));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("t", "2"));
CalculatorTestUtils.assertEval("2t", "∂(t^2,t)", JsclOperation.simplify);
CalculatorTestUtils.assertEval("4", "∂(t^2,t)");
@@ -256,7 +256,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@Test
public void testFormatting() throws Exception {
final MathEngine ce = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine ce = Locator.getInstance().getEngine().getMathEngine0();
CalculatorTestUtils.assertEval("12 345", ce.simplify( "12345"));
@@ -264,7 +264,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@Test
public void testI() throws ParseException, CalculatorEvalException {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
CalculatorTestUtils.assertEval("-i", cm.evaluate( "i^3"));
for (int i = 0; i < 1000; i++) {
@@ -289,7 +289,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@Test
public void testEmptyFunction() throws Exception {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
try {
cm.evaluate( "cos(cos(cos(cos(acos(acos(acos(acos(acos(acos(acos(acos(cos(cos(cos(cos(cosh(acos(cos(cos(cos(cos(cos(acos(acos(acos(acos(acos(acos(acos(acos(cos(cos(cos(cos(cosh(acos(cos())))))))))))))))))))))))))))))))))))))");
Assert.fail();
@@ -310,7 +310,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
cm.setAngleUnits(defaultAngleUnit);
}
CalculatorLocatorImpl.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("si", 5d));
Locator.getInstance().getEngine().getVarsRegistry().add(new Var.Builder("si", 5d));
CalculatorTestUtils.assertEval("5", cm.evaluate( "si"));
CalculatorTestUtils.assertError("sin");
@@ -318,7 +318,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@Test
public void testRounding() throws Exception {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
try {
DecimalFormatSymbols decimalGroupSymbols = new DecimalFormatSymbols(Locale.getDefault());
@@ -342,7 +342,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@Test
public void testComparisonFunction() throws Exception {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
CalculatorTestUtils.assertEval("0", "eq(0, 1)");
CalculatorTestUtils.assertEval("1", "eq(1, 1)");
@@ -379,7 +379,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@Test
public void testNumeralSystems() throws Exception {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
CalculatorTestUtils.assertEval("11 259 375", "0x:ABCDEF");
CalculatorTestUtils.assertEval("30 606 154.462", "0x:ABCDEF*e");
@@ -408,7 +408,7 @@ public class AndroidCalculatorEngineTest extends AbstractCalculatorTest {
@Test
public void testLog() throws Exception {
final MathEngine cm = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine0();
final MathEngine cm = Locator.getInstance().getEngine().getMathEngine0();
CalculatorTestUtils.assertEval("", Expression.valueOf("1/0").numeric().toString());
CalculatorTestUtils.assertEval("", Expression.valueOf("ln(10)/ln(1)").numeric().toString());

View File

@@ -27,7 +27,7 @@ public class NumeralBaseTest extends AbstractCalculatorTest {
@BeforeClass
public static void staticSetUp() throws Exception {
CalculatorTestUtils.staticSetUp();
CalculatorLocatorImpl.getInstance().getEngine().setPrecision(3);
Locator.getInstance().getEngine().setPrecision(3);
}
@Test
@@ -97,11 +97,11 @@ public class NumeralBaseTest extends AbstractCalculatorTest {
final String bin = "0b:" + line[2].toUpperCase();
final String decExpression = converter.convert(dec);
final String decResult = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine().evaluate(decExpression);
final String decResult = Locator.getInstance().getEngine().getMathEngine().evaluate(decExpression);
final String hexExpression = converter.convert(hex);
final String hexResult = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine().evaluate(hexExpression);
final String hexResult = Locator.getInstance().getEngine().getMathEngine().evaluate(hexExpression);
final String binExpression = converter.convert(bin);
final String binResult = CalculatorLocatorImpl.getInstance().getEngine().getMathEngine().evaluate(binExpression);
final String binResult = Locator.getInstance().getEngine().getMathEngine().evaluate(binExpression);
Assert.assertEquals("dec-hex: " + decExpression + " : " + hexExpression, decResult, hexResult);
Assert.assertEquals("dec-bin: " + decExpression + " : " + binExpression, decResult, binResult);

View File

@@ -65,10 +65,10 @@ public class ToJsclTextProcessorTest extends AbstractCalculatorTest {
Assert.assertEquals( "EE", preprocessor.process("EE").toString());
try {
CalculatorLocatorImpl.getInstance().getEngine().setNumeralBase(NumeralBase.hex);
Locator.getInstance().getEngine().setNumeralBase(NumeralBase.hex);
Assert.assertEquals( "22F*exp(F)", preprocessor.process("22Fexp(F)").toString());
} finally {
CalculatorLocatorImpl.getInstance().getEngine().setNumeralBase(NumeralBase.dec);
Locator.getInstance().getEngine().setNumeralBase(NumeralBase.dec);
}
Assert.assertEquals( "0x:ABCDEF", preprocessor.process("0x:ABCDEF").toString());
Assert.assertEquals( "0x:ABCDEF", preprocessor.process("0x:A BC DEF").toString());