use of com.hannesdorfmann.mosby3.mvp.MvpView in project mosby by sockeqwe.
the class ActivityMvpViewStateDelegateImplTestNew method appStartWithViewStateFromMemoryAndBundleButPreferViewStateFromMemory.
@Test
public void appStartWithViewStateFromMemoryAndBundleButPreferViewStateFromMemory() {
ActivityMvpViewStateDelegateImpl<MvpView, MvpPresenter<MvpView>, ViewState<MvpView>> delegate = new ActivityMvpViewStateDelegateImpl<>(activity, callback, true);
Mockito.doAnswer(new Answer() {
@Override
public Object answer(InvocationOnMock invocation) throws Throwable {
viewState = Mockito.spy(new SimpleRestorableViewState());
return viewState;
}
}).when(callback).createViewState();
startActivity(delegate, null, 1, 1, 1, 1, 1, 0, null, 0, 1, 0);
Bundle bundle = BundleMocker.create();
finishActivity(delegate, bundle, 1, 0, true, false);
startActivity(delegate, bundle, 1, 2, 2, 1, 2, 1, true, 1, 1, 1);
finishActivity(delegate, bundle, 2, 1, false, true);
}
use of com.hannesdorfmann.mosby3.mvp.MvpView in project mosby by sockeqwe.
the class ActivityMvpViewStateDelegateImplTestNew method appStartFinishing.
@Test
public void appStartFinishing() {
ActivityMvpViewStateDelegateImpl<MvpView, MvpPresenter<MvpView>, ViewState<MvpView>> delegate = new ActivityMvpViewStateDelegateImpl<>(activity, callback, true);
startActivity(delegate, null, 1, 1, 1, 1, 1, 0, null, 0, 1, 0);
Bundle bundle = BundleMocker.create();
finishActivity(delegate, bundle, 1, 1, false, true);
}
use of com.hannesdorfmann.mosby3.mvp.MvpView in project mosby by sockeqwe.
the class ActivityMvpViewStateDelegateImplTestNew method dontKeepPresenterAndViewState.
@Test
public void dontKeepPresenterAndViewState() {
ActivityMvpViewStateDelegateImpl<MvpView, MvpPresenter<MvpView>, ViewState<MvpView>> delegate = new ActivityMvpViewStateDelegateImpl<>(activity, callback, false);
startActivity(delegate, null, 1, 1, 1, 1, 1, 0, null, 0, 1, 0);
Bundle bundle = BundleMocker.create();
finishActivity(delegate, bundle, 1, 1, true, false);
startActivity(delegate, bundle, 2, 2, 2, 2, 2, 0, null, 0, 2, 0);
finishActivity(delegate, bundle, 2, 2, false, true);
}
use of com.hannesdorfmann.mosby3.mvp.MvpView in project mosby by sockeqwe.
the class ViewGroupMvpViewStateDelegateImplTest method initComponents.
@Before
public void initComponents() {
view = new MvpView() {
};
savedState = null;
viewState = Mockito.mock(ViewState.class);
presenter = Mockito.mock(MvpPresenter.class);
callback = Mockito.mock(PartialViewGroupMvpViewStateDelegateCallbackImpl.class);
Mockito.doCallRealMethod().when(callback).setPresenter(presenter);
Mockito.doCallRealMethod().when(callback).getPresenter();
Mockito.doCallRealMethod().when(callback).setViewState(viewState);
Mockito.doCallRealMethod().when(callback).getViewState();
Mockito.doCallRealMethod().when(callback).superOnSaveInstanceState();
activity = Mockito.mock(FragmentActivity.class);
application = Mockito.mock(Application.class);
androidView = Mockito.mock(View.class);
Mockito.when(callback.getMvpView()).thenReturn(view);
Mockito.when(callback.getContext()).thenReturn(activity);
Mockito.when(activity.getApplication()).thenReturn(application);
Mockito.when(callback.createPresenter()).thenReturn(presenter);
Mockito.when(callback.createViewState()).thenReturn(viewState);
Mockito.when(androidView.isInEditMode()).thenReturn(false);
delegate = new ViewGroupMvpViewStateDelegateImpl<>(androidView, callback, true);
}
use of com.hannesdorfmann.mosby3.mvp.MvpView in project mosby by sockeqwe.
the class ViewGroupMvpViewStateDelegateImplTest method dontKeepPresenterIfSecondPresenterIsInPresenterManager.
/**
* Checks if two Views one that keeps presenter, the other who doesn't keep presenter during
* screen orientation changes work properly
*
* https://github.com/sockeqwe/mosby/issues/231
*/
@Test
public void dontKeepPresenterIfSecondPresenterIsInPresenterManager() {
MvpView view1 = new MvpView() {
};
View androidView1 = Mockito.mock(View.class);
ViewState<MvpView> viewState1 = Mockito.mock(ViewState.class);
MvpPresenter<MvpView> presenter1 = Mockito.mock(MvpPresenter.class);
PartialViewGroupMvpViewStateDelegateCallbackImpl callback1 = Mockito.mock(PartialViewGroupMvpViewStateDelegateCallbackImpl.class);
Mockito.doCallRealMethod().when(callback1).setPresenter(presenter1);
Mockito.doCallRealMethod().when(callback1).getPresenter();
Mockito.doCallRealMethod().when(callback1).setViewState(viewState1);
Mockito.doCallRealMethod().when(callback1).getViewState();
Mockito.when(callback1.getMvpView()).thenReturn(view1);
Mockito.when(callback1.getContext()).thenReturn(activity);
Mockito.when(callback1.createPresenter()).thenReturn(presenter1);
Mockito.when(callback1.createViewState()).thenReturn(viewState1);
Mockito.when(androidView1.isInEditMode()).thenReturn(false);
ViewGroupMvpViewStateDelegateImpl keepDelegate = new ViewGroupMvpViewStateDelegateImpl<>(androidView1, callback1, true);
keepDelegate.onAttachedToWindow();
delegate = new ViewGroupMvpViewStateDelegateImpl<>(androidView, callback, false);
startViewGroup(1, 1, 1, 1, 1, 0, null, 0, 1, 0);
finishViewGroup(1, 1, true, false);
delegate = new ViewGroupMvpViewStateDelegateImpl<>(androidView, callback, false);
startViewGroup(2, 2, 2, 2, 2, 0, null, 0, 2, 0);
finishViewGroup(2, 2, false, true);
keepDelegate.onDetachedFromWindow();
}
Aggregations