private void assertFragment(FragmentManager manager, Fragment fragment, int index) { assertEquals(fragment, manager.findFragmentByTag(Integer.toString(index))); } }
private void assertTopFragment(FragmentManager manager, FragmentStack stack, Fragment fragment, int index) { assertFragment(manager, fragment, index); assertEquals(fragment, manager.findFragmentById(CONTAINER_ID)); assertEquals(fragment, stack.peek()); assertEquals(index, manager.getBackStackEntryCount()); }
@UiThreadTest public void testFindCallback() throws Exception { FragmentManager manager = activity.getSupportFragmentManager(); FragmentStack stack = new FragmentStack(activity, manager, CONTAINER_ID); TestFragmentC fragment = new TestFragmentC(); stack.push(fragment); TestFragment2 fragment2 = new TestFragment2(); stack.push(fragment2); assertEquals(fragment, stack.findCallback(fragment2, TestCallback.class)); assertEquals(activity, stack.findCallback(fragment2, Activity.class)); assertNull(stack.findCallback(fragment2, String.class)); }
@UiThreadTest public void testBack() throws Exception { FragmentManager manager = activity.getSupportFragmentManager(); FragmentStack stack = new FragmentStack(activity, manager, CONTAINER_ID); assertFalse(stack.back()); stack.push(new TestFragment1()); assertEquals(1, stack.size()); assertFalse(stack.back()); stack.push(new TestFragment1()); assertEquals(2, stack.size()); assertTrue(stack.back()); assertEquals(1, stack.size()); }