private void checkIndexOf(List<?> toTest, int[] expected) { int index = 0; for (Object obj : toTest) { String name = "toTest[" + index + "] (" + obj + ")"; assertThat(Lists.indexOfImpl(toTest, obj)).named(name).isEqualTo(expected[index]); index++; } }
private void checkLastIndexOf(List<?> toTest, int[] expected) { int index = 0; for (Object obj : toTest) { String name = "toTest[" + index + "] (" + obj + ")"; assertThat(Lists.lastIndexOfImpl(toTest, obj)).named(name).isEqualTo(expected[index]); index++; } }
@GwtIncompatible // reflection private static void assertWontGrow( int size, HashMap<Object, Object> map1, HashMap<Object, Object> map2) throws Exception { // Only start measuring table size after the first element inserted, to // deal with empty-map optimization. map1.put(0, null); int initialBuckets = bucketsOf(map1); for (int i = 1; i < size; i++) { map1.put(i, null); } assertThat(bucketsOf(map1)) .named("table size after adding " + size + " elements") .isEqualTo(initialBuckets); /* * Something slightly different happens when the entries are added all at * once; make sure that passes too. */ map2.putAll(map1); assertThat(bucketsOf(map1)) .named("table size after adding " + size + " elements") .isEqualTo(initialBuckets); }
@Test public void setStaticFieldReflectively_withField_setsStaticFields() throws Exception { Field field = ExampleDescendant.class.getDeclaredField("DESCENDANT"); int startingValue = ReflectionHelpers.getStaticField(field); ReflectionHelpers.setStaticField(field, 7); assertThat(startingValue).named("startingValue").isEqualTo(6); assertThat(ExampleDescendant.DESCENDANT).named("DESCENDENT").isEqualTo(7); /// Reset the value to avoid test pollution ReflectionHelpers.setStaticField(field, startingValue); }
private void recycle_shouldRemoveMessageFromScheduler() { ShadowLooper.pauseMainLooper(); Handler h = new Handler(); Message msg = Message.obtain(h, 234); msg.sendToTarget(); Scheduler scheduler = Robolectric.getForegroundThreadScheduler(); assertThat(scheduler.size()).named("before recycle").isEqualTo(1); shadowOf(msg).recycleUnchecked(); assertThat(scheduler.size()).named("after recycle").isEqualTo(0); }
@Test public void testDefaultPreparationDelay() { assertThat(info.getPreparationDelay()) .named("preparationDelay").isEqualTo(0); }
@Test public void testInitialAudioSessionIdIsNotZero() { assertThat(mediaPlayer.getAudioSessionId()).named("initial audioSessionId") .isNotEqualTo(0); }
@Test public void setStaticFieldReflectively_withFieldName_setsStaticFields() { int startingValue = ReflectionHelpers.getStaticField(ExampleDescendant.class, "DESCENDANT"); ReflectionHelpers.setStaticField(ExampleDescendant.class, "DESCENDANT", 7); assertThat(startingValue).named("startingValue").isEqualTo(6); assertThat(ExampleDescendant.DESCENDANT).named("DESCENDENT").isEqualTo(7); // Reset the value to avoid test pollution ReflectionHelpers.setStaticField(ExampleDescendant.class, "DESCENDANT", startingValue); }
@Test public void testByteArrayOfZeroesCastedToZeroes() { parcel.writeByteArray(new byte[17]); assertThat(parcel.dataSize()).named("total size").isEqualTo(24); parcel.setDataPosition(0); assertThat(parcel.readInt()).isEqualTo(17); assertThat(parcel.readInt()).isEqualTo(0); assertThat(parcel.readFloat()).isEqualTo(0.0f); assertThat(parcel.createByteArray()).isEqualTo(new byte[0]); assertThat(parcel.readString()).isEqualTo(""); }
public CursorAssert hasRow(Object... values) { assertThat(cursor.moveToNext()).named("row " + (row + 1) + " exists").isTrue(); row += 1; assertThat(cursor.getColumnCount()).named("column count").isEqualTo(values.length); for (int i = 0; i < values.length; i++) { assertThat(cursor.getString(i)) .named("row " + row + " column '" + cursor.getColumnName(i) + "'") .isEqualTo(values[i]); } return this; }
@Test public void removedMessage_isNotSentToHandler() { enqueueMessage(testMessage, 200); assertThat(scheduler.size()).named("scheduler size:before").isEqualTo(1); removeMessages(handler, testMessage.what, null); scheduler.advanceToLastPostedRunnable(); assertThat(scheduler.size()).named("scheduler size:after").isEqualTo(0); assertThat(handler.handled).named("handled").isEmpty(); }
@Test public void callConstructorReflectively_whenMultipleSignaturesExistForTheConstructor_callsConstructorWithCorrectSignature() { ExampleClass ec = ReflectionHelpers.callConstructor(ExampleClass.class, ClassParameter.from(int.class, 16)); assertThat(ec.index).named("index").isEqualTo(16); assertThat(ec.name).named("name").isNull(); }
@Test public void testGetAttributeCount() throws Exception { assertThat(parser.getAttributeCount()) .named("When no node is being explored the number of attributes should be -1.").isEqualTo(-1); forgeAndOpenDocument("<foo bar=\"bar\"/>"); assertThat(parser.getAttributeCount()).isEqualTo(1); }
@Test public void enqueueMessage_doesntSchedule_whenQuitting() { setField(queue, quitField, true); enqueueMessage(testMessage, 1); assertThat(scheduler.size()).named("scheduler_size").isEqualTo(0); }
@Test public void testGetAttributeUnsignedIntValue_StringStringInt() throws Exception { forgeAndOpenDocument("<foo xmlns:app=\"http://schemas.android.com/apk/res-auto\" app:bar=\"12\"/>"); assertThat(parser.getAttributeUnsignedIntValue(RES_AUTO_NS, "bar", 0)).isEqualTo(12); assertThat(parser.getAttributeUnsignedIntValue(RES_AUTO_NS, "foo", 0)).isEqualTo(0); // Negative unsigned int must be forgeAndOpenDocument("<foo xmlns:app=\"http://schemas.android.com/apk/res-auto\" app:bar=\"-12\"/>"); assertThat(parser.getAttributeUnsignedIntValue(RES_AUTO_NS, "bar", 0)) .named("Getting a negative number as unsigned should return the default value.").isEqualTo(0); }
@Test public void testSetLoopingCalledWhileStartable() { final State[] startableStates = { PREPARED, PAUSED }; for (State state : startableStates) { shadowMediaPlayer.setCurrentPosition(500); shadowMediaPlayer.setState(state); mediaPlayer.setLooping(true); mediaPlayer.start(); scheduler.advanceBy(700); Mockito.verifyZeroInteractions(completionListener); assertThat(mediaPlayer.getCurrentPosition()).named(state.toString()) .isEqualTo(200); } }
@Test public void testGetAttributeUnsignedIntValue_IntInt() throws Exception { forgeAndOpenDocument("<foo bar=\"12\"/>"); assertThat(parser.getAttributeUnsignedIntValue(0, 0)).isEqualTo(12); assertThat(parser.getAttributeUnsignedIntValue(attributeIndexOutOfIndex(), 0)).isEqualTo(0); // Negative unsigned int must be forgeAndOpenDocument("<foo bar=\"-12\"/>"); assertThat(parser.getAttributeUnsignedIntValue(0, 0)) .named("Getting a negative number as unsigned should return the default value.").isEqualTo(0); }
@Test public void setDefaultKeyMode_shouldSetKeyMode() { int[] modes = { Activity.DEFAULT_KEYS_DISABLE, Activity.DEFAULT_KEYS_SHORTCUT, Activity.DEFAULT_KEYS_DIALER, Activity.DEFAULT_KEYS_SEARCH_LOCAL, Activity.DEFAULT_KEYS_SEARCH_GLOBAL }; Activity activity = new Activity(); ShadowActivity shadow = shadowOf(activity); for (int mode : modes) { activity.setDefaultKeyMode(mode); assertThat(shadow.getDefaultKeymode()).named("Unexpected key mode").isEqualTo(mode); } }
@Test public void testSeekBeforeStart() { shadowMediaPlayer.setSeekDelay(-1); for (State state : seekableStates) { shadowMediaPlayer.setState(state); shadowMediaPlayer.setCurrentPosition(500); mediaPlayer.seekTo(-1); shadowMediaPlayer.invokeSeekCompleteListener(); assertThat(mediaPlayer.getCurrentPosition()).named( "Current postion while " + state).isEqualTo(0); assertThat(shadowMediaPlayer.getState()).named("Final state " + state) .isEqualTo(state); } }
@Test public void testSeekPastEnd() { shadowMediaPlayer.setSeekDelay(-1); for (State state : seekableStates) { shadowMediaPlayer.setState(state); shadowMediaPlayer.setCurrentPosition(500); mediaPlayer.seekTo(1001); shadowMediaPlayer.invokeSeekCompleteListener(); assertThat(mediaPlayer.getCurrentPosition()).named( "Current postion while " + state).isEqualTo(1000); assertThat(shadowMediaPlayer.getState()).named("Final state " + state) .isEqualTo(state); } }