package org.robolectric.fakes; import android.content.Context; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RuntimeEnvironment; import org.robolectric.TestRunners; import static org.assertj.core.api.Assertions.assertThat; @RunWith(TestRunners.SelfTest.class) public class RoboVibratorTest { private RoboVibrator vibrator; @Before public void before() { vibrator = (RoboVibrator) RuntimeEnvironment.application.getSystemService(Context.VIBRATOR_SERVICE); } @Test public void vibrateMilliseconds() { vibrator.vibrate(5000); assertThat(vibrator.isVibrating()).isTrue(); assertThat(vibrator.getMilliseconds()).isEqualTo(5000L); } @Test public void vibratePattern() { long[] pattern = new long[] { 0, 200 }; vibrator.vibrate(pattern, 2); assertThat(vibrator.isVibrating()).isTrue(); assertThat(vibrator.getPattern()).isEqualTo(pattern); assertThat(vibrator.getRepeat()).isEqualTo(2); } @Test public void cancelled() { vibrator.vibrate(5000); assertThat(vibrator.isVibrating()).isTrue(); assertThat(vibrator.isCancelled()).isFalse(); vibrator.cancel(); assertThat(vibrator.isVibrating()).isFalse(); assertThat(vibrator.isCancelled()).isTrue(); } }