// Path: chronos/src/androidTest/java/com/redmadrobot/chronos/mock/operation/SimpleErrorOperation.java
// public final class SimpleErrorOperation extends ChronosOperation<String> {
// 
//     private final static RuntimeException EXCEPTION = new RuntimeException("Test exception");
// 
//     @Contract("null -> false")
//     public static boolean isExpectedException(@Nullable final Exception exception) {
//         return exception != null && exception.equals(EXCEPTION);
//     }
// 
//     @Nullable
//     @Override
//     public String run() {
//         sleep(TestSettings.OPERATION_WAIT);
//         throw EXCEPTION;
//     }
// 
//     @NonNull
//     @Override
//     public Class<? extends ChronosOperationResult<String>> getResultClass() {
//         return SimpleOperationResult.class;
//     }
// }
// 
// Path: chronos/src/androidTest/java/com/redmadrobot/chronos/mock/operation/SimpleOperation.java
// public final class SimpleOperation extends ChronosOperation<String> {
// 
//     private final String mInput;
// 
//     public SimpleOperation(@NonNull final String input) {
//         mInput = input;
//     }
// 
//     @Nullable
//     @Override
//     public String run() {
//         final String result = transform(mInput);
//         sleep(TestSettings.OPERATION_WAIT);
//         return result;
//     }
// 
//     public static boolean isTransform(@NonNull final String input, @Nullable final String output) {
//         return output != null && transform(input).equals(output);
//     }
// 
//     @NonNull
//     private static String transform(@NonNull final String input) {
//         return input.concat(input);
//     }
// 
//     @NonNull
//     @Override
//     public Class<? extends ChronosOperationResult<String>> getResultClass() {
//         return SimpleOperationResult.class;
//     }
// 
// }
// 
// Path: chronos/src/androidTest/java/com/redmadrobot/chronos/mock/operation/SimpleOperationResult.java
// public final class SimpleOperationResult extends ChronosOperationResult<String> {
// 
// }


import com.redmadrobot.chronos.mock.operation.SimpleErrorOperation;
import com.redmadrobot.chronos.mock.operation.SimpleOperation;
import com.redmadrobot.chronos.mock.operation.SimpleOperationResult;
import org.jetbrains.annotations.Contract;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
    public String getBroadcastResult() {
        return mBroadcastResult;
    }

    @Nullable
    public Exception getBroadcastError() {
        return mBroadcastError;
    }

    public int getBroadcastResultObtained() {
        return mBroadcastResultObtained;
    }

    public final int runSimple(@NonNull final String input) {
        return runOperation(new SimpleOperation(input));
    }

    public final int runBroadcast(@NonNull final String input) {
        return runOperationBroadcast(new SimpleOperation(input));
    }

    public final int runSimpleTagged(@NonNull final String input) {
        return runOperation(new SimpleOperation(input), OPERATION_TAG);
    }

    public final int runBroadcastTagged(@NonNull final String input) {
        return runOperationBroadcast(new SimpleOperation(input), OPERATION_TAG);
    }

    public final int runErrorSimple() {
// Path: chronos/src/androidTest/java/com/redmadrobot/chronos/mock/operation/SimpleErrorOperation.java
// public final class SimpleErrorOperation extends ChronosOperation<String> {
// 
//     private final static RuntimeException EXCEPTION = new RuntimeException("Test exception");
// 
//     @Contract("null -> false")
//     public static boolean isExpectedException(@Nullable final Exception exception) {
//         return exception != null && exception.equals(EXCEPTION);
//     }
// 
//     @Nullable
//     @Override
//     public String run() {
//         sleep(TestSettings.OPERATION_WAIT);
//         throw EXCEPTION;
//     }
// 
//     @NonNull
//     @Override
//     public Class<? extends ChronosOperationResult<String>> getResultClass() {
//         return SimpleOperationResult.class;
//     }
// }
// 
// Path: chronos/src/androidTest/java/com/redmadrobot/chronos/mock/operation/SimpleOperation.java
// public final class SimpleOperation extends ChronosOperation<String> {
// 
//     private final String mInput;
// 
//     public SimpleOperation(@NonNull final String input) {
//         mInput = input;
//     }
// 
//     @Nullable
//     @Override
//     public String run() {
//         final String result = transform(mInput);
//         sleep(TestSettings.OPERATION_WAIT);
//         return result;
//     }
// 
//     public static boolean isTransform(@NonNull final String input, @Nullable final String output) {
//         return output != null && transform(input).equals(output);
//     }
// 
//     @NonNull
//     private static String transform(@NonNull final String input) {
//         return input.concat(input);
//     }
// 
//     @NonNull
//     @Override
//     public Class<? extends ChronosOperationResult<String>> getResultClass() {
//         return SimpleOperationResult.class;
//     }
// 
// }
// 
// Path: chronos/src/androidTest/java/com/redmadrobot/chronos/mock/operation/SimpleOperationResult.java
// public final class SimpleOperationResult extends ChronosOperationResult<String> {
// 
// }


// Path: chronos/src/androidTest/java/com/redmadrobot/chronos/mock/gui/SimpleMockFragment.java
import com.redmadrobot.chronos.mock.operation.SimpleErrorOperation;
import com.redmadrobot.chronos.mock.operation.SimpleOperation;
import com.redmadrobot.chronos.mock.operation.SimpleOperationResult;
import org.jetbrains.annotations.Contract;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;

    public String getBroadcastResult() {
        return mBroadcastResult;
    }

    @Nullable
    public Exception getBroadcastError() {
        return mBroadcastError;
    }

    public int getBroadcastResultObtained() {
        return mBroadcastResultObtained;
    }

    public final int runSimple(@NonNull final String input) {
        return runOperation(new SimpleOperation(input));
    }

    public final int runBroadcast(@NonNull final String input) {
        return runOperationBroadcast(new SimpleOperation(input));
    }

    public final int runSimpleTagged(@NonNull final String input) {
        return runOperation(new SimpleOperation(input), OPERATION_TAG);
    }

    public final int runBroadcastTagged(@NonNull final String input) {
        return runOperationBroadcast(new SimpleOperation(input), OPERATION_TAG);
    }

    public final int runErrorSimple() {
        return runOperation(new SimpleErrorOperation());