| Index: content/public/android/javatests/src/org/chromium/content/browser/ServiceRegistryTest.java
|
| diff --git a/content/public/android/javatests/src/org/chromium/content/browser/ServiceRegistryTest.java b/content/public/android/javatests/src/org/chromium/content/browser/ServiceRegistryTest.java
|
| deleted file mode 100644
|
| index d26bbb755c77cb12c337fca95c63d00bab3a8f23..0000000000000000000000000000000000000000
|
| --- a/content/public/android/javatests/src/org/chromium/content/browser/ServiceRegistryTest.java
|
| +++ /dev/null
|
| @@ -1,203 +0,0 @@
|
| -// Copyright 2014 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -package org.chromium.content.browser;
|
| -
|
| -import android.test.suitebuilder.annotation.SmallTest;
|
| -
|
| -import org.chromium.base.library_loader.LibraryLoader;
|
| -import org.chromium.base.library_loader.LibraryProcessType;
|
| -import org.chromium.content.browser.ServiceRegistry.ImplementationFactory;
|
| -import org.chromium.content_shell.ShellMojoTestUtils;
|
| -import org.chromium.content_shell_apk.ContentShellTestBase;
|
| -import org.chromium.mojo.bindings.ConnectionErrorHandler;
|
| -import org.chromium.mojo.bindings.InterfaceRequest;
|
| -import org.chromium.mojo.bindings.test.mojom.math.Calculator;
|
| -import org.chromium.mojo.system.MojoException;
|
| -import org.chromium.mojo.system.Pair;
|
| -import org.chromium.mojo.system.impl.CoreImpl;
|
| -
|
| -import java.io.Closeable;
|
| -import java.util.ArrayList;
|
| -import java.util.List;
|
| -
|
| -/**
|
| - * Instrumentation tests for ServiceRegistry.
|
| - */
|
| -public class ServiceRegistryTest extends ContentShellTestBase {
|
| -
|
| - private static final long RUN_LOOP_TIMEOUT_MS = 25;
|
| -
|
| - private final List<Closeable> mCloseablesToClose = new ArrayList<Closeable>();
|
| - private long mNativeTestEnvironment;
|
| -
|
| - static class CalcConnectionErrorHandler implements ConnectionErrorHandler {
|
| -
|
| - MojoException mLastMojoException;
|
| -
|
| - @Override
|
| - public void onConnectionError(MojoException e) {
|
| - mLastMojoException = e;
|
| - }
|
| - }
|
| -
|
| - static class CalcCallback implements Calculator.AddResponse, Calculator.MultiplyResponse {
|
| -
|
| - double mResult = 0.0;
|
| -
|
| - @Override
|
| - public void call(Double result) {
|
| - mResult = result;
|
| - }
|
| -
|
| - public double getResult() {
|
| - return mResult;
|
| - }
|
| - }
|
| -
|
| - static class CalculatorImpl implements Calculator {
|
| -
|
| - double mResult = 0.0;
|
| -
|
| - @Override
|
| - public void close() {}
|
| -
|
| - @Override
|
| - public void onConnectionError(MojoException e) {}
|
| -
|
| - @Override
|
| - public void clear(ClearResponse callback) {
|
| - mResult = 0.0;
|
| - callback.call(mResult);
|
| - }
|
| -
|
| - @Override
|
| - public void add(double value, AddResponse callback) {
|
| - mResult += value;
|
| - callback.call(mResult);
|
| - }
|
| -
|
| - @Override
|
| - public void multiply(double value, MultiplyResponse callback) {
|
| - mResult *= value;
|
| - callback.call(mResult);
|
| - }
|
| - }
|
| -
|
| - static class CalculatorFactory implements ImplementationFactory<Calculator> {
|
| -
|
| - @Override
|
| - public Calculator createImpl() {
|
| - return new CalculatorImpl();
|
| - }
|
| - }
|
| -
|
| -
|
| - @Override
|
| - protected void setUp() throws Exception {
|
| - super.setUp();
|
| - LibraryLoader.get(LibraryProcessType.PROCESS_BROWSER).ensureInitialized(
|
| - getInstrumentation().getTargetContext());
|
| - launchContentShellWithUrl("about://blank");
|
| - mNativeTestEnvironment = ShellMojoTestUtils.setupTestEnvironment();
|
| - }
|
| -
|
| - @Override
|
| - protected void tearDown() throws Exception {
|
| - for (Closeable c : mCloseablesToClose) {
|
| - c.close();
|
| - }
|
| - ShellMojoTestUtils.tearDownTestEnvironment(mNativeTestEnvironment);
|
| - mNativeTestEnvironment = 0;
|
| - super.tearDown();
|
| - }
|
| -
|
| - /**
|
| - * Verifies that remote service can be requested and works.
|
| - */
|
| - @SmallTest
|
| - public void testConnectToService() {
|
| - Pair<ServiceRegistry, ServiceRegistry> registryPair =
|
| - ShellMojoTestUtils.createServiceRegistryPair(mNativeTestEnvironment);
|
| - ServiceRegistry serviceRegistryA = registryPair.first;
|
| - ServiceRegistry serviceRegistryB = registryPair.second;
|
| -
|
| - // Add the Calculator service.
|
| - serviceRegistryA.addService(Calculator.MANAGER, new CalculatorFactory());
|
| -
|
| - Pair<Calculator.Proxy, InterfaceRequest<Calculator>> requestPair =
|
| - Calculator.MANAGER.getInterfaceRequest(CoreImpl.getInstance());
|
| -
|
| - mCloseablesToClose.add(requestPair.first);
|
| - serviceRegistryB.connectToRemoteService(Calculator.MANAGER, requestPair.second);
|
| -
|
| - // Perform a few operations on the Calculator.
|
| - Calculator.Proxy calculator = requestPair.first;
|
| - CalcConnectionErrorHandler errorHandler = new CalcConnectionErrorHandler();
|
| - calculator.getProxyHandler().setErrorHandler(errorHandler);
|
| - CalcCallback callback = new CalcCallback();
|
| -
|
| - calculator.add(21, callback);
|
| - ShellMojoTestUtils.runLoop(RUN_LOOP_TIMEOUT_MS);
|
| - assertEquals(21.0, callback.getResult());
|
| -
|
| - calculator.multiply(2, callback);
|
| - ShellMojoTestUtils.runLoop(RUN_LOOP_TIMEOUT_MS);
|
| - assertEquals(42.0, callback.getResult());
|
| - }
|
| -
|
| - /**
|
| - * Verifies that a service can be requested only after it is added and not after it is removed.
|
| - */
|
| - @SmallTest
|
| - public void testAddRemoveService() {
|
| - Pair<ServiceRegistry, ServiceRegistry> registryPair =
|
| - ShellMojoTestUtils.createServiceRegistryPair(mNativeTestEnvironment);
|
| - ServiceRegistry serviceRegistryA = registryPair.first;
|
| - ServiceRegistry serviceRegistryB = registryPair.second;
|
| -
|
| - // Request the Calculator service before it is added.
|
| - Pair<Calculator.Proxy, InterfaceRequest<Calculator>> requestPair =
|
| - Calculator.MANAGER.getInterfaceRequest(CoreImpl.getInstance());
|
| - Calculator.Proxy calculator = requestPair.first;
|
| - CalcConnectionErrorHandler errorHandler = new CalcConnectionErrorHandler();
|
| - calculator.getProxyHandler().setErrorHandler(errorHandler);
|
| - mCloseablesToClose.add(calculator);
|
| - serviceRegistryB.connectToRemoteService(Calculator.MANAGER, requestPair.second);
|
| -
|
| - // Spin the message loop and verify that an error occured.
|
| - assertNull(errorHandler.mLastMojoException);
|
| - ShellMojoTestUtils.runLoop(RUN_LOOP_TIMEOUT_MS);
|
| - assertNotNull(errorHandler.mLastMojoException);
|
| -
|
| - // Add the Calculator service and request it again.
|
| - errorHandler.mLastMojoException = null;
|
| - serviceRegistryA.addService(Calculator.MANAGER, new CalculatorFactory());
|
| - requestPair = Calculator.MANAGER.getInterfaceRequest(CoreImpl.getInstance());
|
| - calculator = requestPair.first;
|
| - errorHandler = new CalcConnectionErrorHandler();
|
| - mCloseablesToClose.add(calculator);
|
| - serviceRegistryB.connectToRemoteService(Calculator.MANAGER, requestPair.second);
|
| -
|
| - // Spin the message loop and verify that no error occured.
|
| - assertNull(errorHandler.mLastMojoException);
|
| - ShellMojoTestUtils.runLoop(RUN_LOOP_TIMEOUT_MS);
|
| - assertNull(errorHandler.mLastMojoException);
|
| -
|
| - // Remove the Calculator service and request it again.
|
| - errorHandler.mLastMojoException = null;
|
| - serviceRegistryA.removeService(Calculator.MANAGER);
|
| - requestPair = Calculator.MANAGER.getInterfaceRequest(CoreImpl.getInstance());
|
| - calculator = requestPair.first;
|
| - errorHandler = new CalcConnectionErrorHandler();
|
| - calculator.getProxyHandler().setErrorHandler(errorHandler);
|
| - mCloseablesToClose.add(calculator);
|
| - serviceRegistryB.connectToRemoteService(Calculator.MANAGER, requestPair.second);
|
| -
|
| - // Spin the message loop and verify that an error occured.
|
| - assertNull(errorHandler.mLastMojoException);
|
| - ShellMojoTestUtils.runLoop(RUN_LOOP_TIMEOUT_MS);
|
| - assertNotNull(errorHandler.mLastMojoException);
|
| - }
|
| -}
|
|
|