Class BaseEmulatorHelper<T> (2.40.0)

public abstract class BaseEmulatorHelper<T>

Utility class to start and stop a local service which is used by unit testing.

Inheritance

java.lang.Object > BaseEmulatorHelper<T>

Type Parameter

Name Description
T

Static Fields

DEFAULT_HOST

protected static final String DEFAULT_HOST
Field Value
Type Description
String

DEFAULT_PORT

protected static final int DEFAULT_PORT
Field Value
Type Description
int

PROJECT_ID_PREFIX

protected static final String PROJECT_ID_PREFIX
Field Value
Type Description
String

Static Methods

findAvailablePort(int defaultPort)

protected static int findAvailablePort(int defaultPort)
Parameter
Name Description
defaultPort int
Returns
Type Description
int

isWindows()

protected static boolean isWindows()
Returns
Type Description
boolean

Constructors

BaseEmulatorHelper(String emulator, int port, String projectId)

protected BaseEmulatorHelper(String emulator, int port, String projectId)
Parameters
Name Description
emulator String
port int
projectId String

Methods

getEmulatorRunners()

protected abstract List<BaseEmulatorHelper.EmulatorRunner> getEmulatorRunners()

Returns the emulator runners supported by this emulator. Runners are evaluated in order, the first available runner is selected and executed

Returns
Type Description
List<EmulatorRunner>

getLogger()

protected abstract Logger getLogger()

Returns a logger.

Returns
Type Description
Logger

getOptions()

public abstract T getOptions()

Returns service options to access the local emulator.

Returns
Type Description
T

getPort()

public int getPort()

Returns the port to which the local emulator is listening.

Returns
Type Description
int

getProjectId()

public String getProjectId()

Returns the project ID associated with the local emulator.

Returns
Type Description
String

reset()

public abstract void reset()

Resets the internal state of the emulator.

Exceptions
Type Description
IOException

sendPostRequest(String request)

protected final String sendPostRequest(String request)
Parameter
Name Description
request String
Returns
Type Description
String
Exceptions
Type Description
IOException

start()

public abstract void start()

Starts the local emulator.

Exceptions
Type Description
IOException
InterruptedException

startProcess(String blockUntilOutput)

protected final void startProcess(String blockUntilOutput)

Starts the local service as a subprocess. Blocks the execution until blockUntilOutput is found on stdout.

Parameter
Name Description
blockUntilOutput String
Exceptions
Type Description
IOException
InterruptedException

stop(Duration timeout)

public abstract void stop(Duration timeout)

Stops the local emulator.

Parameter
Name Description
timeout org.threeten.bp.Duration
Exceptions
Type Description
IOException
InterruptedException
TimeoutException

waitForProcess(Duration timeout)

protected final int waitForProcess(Duration timeout)

Waits for the local service's subprocess to terminate, and stop any possible thread listening for its output.

Parameter
Name Description
timeout org.threeten.bp.Duration
Returns
Type Description
int
Exceptions
Type Description
IOException
InterruptedException
TimeoutException