blob: 98011fc35c09e38b623d7a6e1729afa8abefaff3 [file] [log] [blame]
package org.robolectric.shadows;
import android.app.Application;
import android.view.View;
import android.widget.ViewAnimator;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.Robolectric;
import org.robolectric.TestRunners;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertSame;
@RunWith(TestRunners.WithDefaults.class)
public class ViewAnimatorTest {
ViewAnimator viewAnimator;
final Application application = Robolectric.application;
@Before
public void setUp() {
viewAnimator = new ViewAnimator(application);
}
@Test
public void getDisplayedChildWhenEmpty_shouldDefaultToZero() {
assertEquals(0, viewAnimator.getDisplayedChild());
}
@Test
public void getDisplayedChild_shouldDefaultToZero() {
viewAnimator.addView(new View(application));
assertEquals(0, viewAnimator.getDisplayedChild());
}
@Test
public void setDisplayedChild_shouldUpdateDisplayedChildIndex() {
viewAnimator.addView(new View(application));
viewAnimator.addView(new View(application));
viewAnimator.setDisplayedChild(2);
assertEquals(2, viewAnimator.getDisplayedChild());
}
@Test
public void getCurrentView_shouldWork() {
View view0 = new View(application);
View view1 = new View(application);
viewAnimator.addView(view0);
viewAnimator.addView(view1);
assertSame(view0, viewAnimator.getCurrentView());
viewAnimator.setDisplayedChild(1);
assertSame(view1, viewAnimator.getCurrentView());
}
@Test
public void showNext_shouldDisplayNextChild() {
viewAnimator.addView(new View(application));
viewAnimator.addView(new View(application));
assertEquals(0, viewAnimator.getDisplayedChild());
viewAnimator.showNext();
assertEquals(1, viewAnimator.getDisplayedChild());
viewAnimator.showNext();
assertEquals(0, viewAnimator.getDisplayedChild());
}
@Test
public void showPrevious_shouldDisplayPreviousChild() {
viewAnimator.addView(new View(application));
viewAnimator.addView(new View(application));
assertEquals(0, viewAnimator.getDisplayedChild());
viewAnimator.showPrevious();
assertEquals(1, viewAnimator.getDisplayedChild());
viewAnimator.showPrevious();
assertEquals(0, viewAnimator.getDisplayedChild());
}
}