public abstract class BaseEmulatorHelper<T>
Utility class to start and stop a local service which is used by unit testing.
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()
Constructors
BaseEmulatorHelper(String emulator, int port, String projectId)
protected BaseEmulatorHelper(String emulator, int port, String projectId)
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
getLogger()
protected abstract Logger getLogger()
getOptions()
public abstract T getOptions()
Returns service options to access the local emulator.
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.
reset()
public abstract void reset()
Resets the internal state of the emulator.
sendPostRequest(String request)
protected final String sendPostRequest(String request)
Parameter |
---|
Name | Description |
request | String
|
start()
public abstract void start()
Starts the local emulator.
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
|
stop(Duration timeout)
public abstract void stop(Duration timeout)
Stops the local emulator.
Parameter |
---|
Name | Description |
timeout | org.threeten.bp.Duration
|
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 | |