package org.wikipedia.media; import android.support.annotation.NonNull; class FakeAvPlayerImplementation implements AvPlayerImplementation { private boolean asyncLoadFailure; private boolean syncLoadFailure; private boolean asyncPlayFailure; private boolean syncPlayFailure; public void setAsyncLoadFailure(boolean enabled) { asyncLoadFailure = enabled; } public void setSyncLoadFailure(boolean enabled) { syncLoadFailure = enabled; } public void setAsyncPlayFailure(boolean enabled) { asyncPlayFailure = enabled; } public void setSyncPlayFailure(boolean enabled) { syncPlayFailure = enabled; } @Override public void deinit() { } @Override public void init() { } @Override public void load(@NonNull String path, @NonNull AvPlayer.Callback callback, @NonNull AvPlayer.ErrorCallback errorCallback) { if (asyncLoadFailure) { // no callback } else if (syncLoadFailure) { errorCallback.onError(); } else { callback.onSuccess(); } } @Override public void stop() { } @Override public void play(@NonNull AvPlayer.Callback callback, @NonNull AvPlayer.ErrorCallback errorCallback) { if (asyncPlayFailure) { // no callback } else if (syncPlayFailure) { errorCallback.onError(); } else { callback.onSuccess(); } } @Override public void pause() { } }