public void testBuilderPutAllEntryList() { List<Entry<String, String>> entryList = Arrays.asList( new AbstractMap.SimpleEntry<>("a", "1"), new AbstractMap.SimpleEntry<>("b", "2")); ImmutableMap<String, String> map = ImmutableMap.<String, String>builder().putAll(entryList).build(); assertThat(map).containsExactly("a", "1", "b", "2").inOrder(); entryList.get(0).setValue("3"); assertThat(map).containsExactly("a", "1", "b", "2").inOrder(); }
@Test public void deferAddsToMap() { ImageView target = mockImageViewTarget(); DeferredRequestCreator deferredRequestCreator = mockDeferredRequestCreator(); assertThat(picasso.targetToDeferredRequestCreator).isEmpty(); picasso.defer(target, deferredRequestCreator); assertThat(picasso.targetToDeferredRequestCreator).hasSize(1); }
public void testMapSplitter_varyingTrimLevels() { MapSplitter splitter = COMMA_SPLITTER.trimResults().withKeyValueSeparator(Splitter.on("->")); Map<String, String> split = splitter.split(" x -> y, z-> a "); assertThat(split).containsEntry("x ", " y"); assertThat(split).containsEntry("z", " a"); } }
/** * Fails if the map does not contain exactly the given set of key/value pairs. * * <p><b>Warning:</b> the use of varargs means that we cannot guarantee an equal number of * key/value pairs at compile time. Please make sure you provide varargs in key/value pairs! * * <p>The arguments must not contain duplicate keys. */ @CanIgnoreReturnValue public Ordered containsExactly(@NullableDecl Object k0, @NullableDecl Object v0, Object... rest) { return containsExactlyEntriesIn(accumulateMap(k0, v0, rest)); }
@Test public void zeroBindingsBindDoesNotThrowExceptionAndCaches() { class Example { } Example example = new Example(); View view = new View(context); assertThat(ButterKnife.BINDINGS).isEmpty(); assertThat(ButterKnife.bind(example, view)).isSameAs(Unbinder.EMPTY); assertThat(ButterKnife.BINDINGS).containsEntry(Example.class, null); }
/** Fails if the subject is not equal to the given object. */ @Override public void isEqualTo(@NullableDecl Object other) { delegate().isEqualTo(other); }
@Test public void disconnectedOnConnectionAcknowledgeTimeout() throws Exception { subscriptionManager.subscribe(subscription1, new SubscriptionManagerCallbackAdapter<Operation.Data>()); subscriptionTransportFactory.callback.onConnected(); assertThat(subscriptionManager.timer.tasks).containsKey(RealSubscriptionManager.CONNECTION_ACKNOWLEDGE_TIMEOUT_TIMER_TASK_ID); onStateChangeListener.awaitState(RealSubscriptionManager.State.DISCONNECTED, RealSubscriptionManager .CONNECTION_ACKNOWLEDGE_TIMEOUT + 800, TimeUnit.MILLISECONDS); assertThat(subscriptionTransportFactory.subscriptionTransport.disconnectMessage).isInstanceOf(OperationClientMessage.Terminate.class); assertThat(subscriptionManager.timer.tasks).isEmpty(); assertThat(subscriptionManager.subscriptions).isEmpty(); }
@Test public void unsubscribeOnError() { SubscriptionManagerCallbackAdapter<Operation.Data> subscriptionManagerCallback1 = new SubscriptionManagerCallbackAdapter<>(); subscriptionManager.subscribe(subscription1, subscriptionManagerCallback1); SubscriptionManagerCallbackAdapter<Operation.Data> subscriptionManagerCallback2 = new SubscriptionManagerCallbackAdapter<>(); subscriptionManager.subscribe(subscription2, subscriptionManagerCallback2); subscriptionTransportFactory.callback.onConnected(); subscriptionTransportFactory.callback.onMessage(new OperationServerMessage.ConnectionAcknowledge()); subscriptionTransportFactory.callback.onMessage(new OperationServerMessage.Error(idForSubscription(subscription1), new UnmodifiableMapBuilder<String, Object>().put("key1", "value1").put("key2", "value2").build())); assertThat(subscriptionManagerCallback1.error).isInstanceOf(ApolloSubscriptionServerException.class); assertThat(((ApolloSubscriptionServerException) subscriptionManagerCallback1.error).errorPayload).containsEntry("key1", "value1"); assertThat(((ApolloSubscriptionServerException) subscriptionManagerCallback1.error).errorPayload).containsEntry("key2", "value2"); assertThat(subscriptionManager.subscriptions).hasSize(1); assertThat(subscriptionManager.subscriptions).containsKey(idForSubscription(subscription2)); assertThat(subscriptionManagerCallback2.completed).isFalse(); }
@Test public void shouldReadActivityAliases() throws Exception { AndroidManifest config = newConfig("TestAndroidManifestForActivityAliases.xml"); assertThat(config.getActivityDatas()).hasSize(2); assertThat(config.getActivityDatas()).containsKey("org.robolectric.shadows.TestActivity"); assertThat(config.getActivityDatas()).containsKey("org.robolectric.shadows.TestActivityAlias"); }
@Test @Config(minSdk = Build.VERSION_CODES.P) public void testSetAppStandbyBuckets() throws Exception { assertThat(shadowOf(usageStatsManager).getAppStandbyBuckets()).isEmpty(); assertThat(shadowOf(usageStatsManager).getAppStandbyBucket("app1")) .isEqualTo(UsageStatsManager.STANDBY_BUCKET_ACTIVE); Map<String, Integer> appBuckets = Collections.singletonMap("app1", UsageStatsManager.STANDBY_BUCKET_RARE); shadowOf(usageStatsManager).setAppStandbyBuckets(appBuckets); assertThat(shadowOf(usageStatsManager).getAppStandbyBuckets()).isEqualTo(appBuckets); assertThat(shadowOf(usageStatsManager).getAppStandbyBucket("app1")) .isEqualTo(UsageStatsManager.STANDBY_BUCKET_RARE); }
/** Fails if the map is not empty. */ @CanIgnoreReturnValue public Ordered containsExactly() { return containsExactlyEntriesIn(ImmutableMap.of()); }
@Test public void performSubmitWithNewRequestQueuesHunter() { Action action = mockAction(URI_KEY_1, URI_1); dispatcher.performSubmit(action); assertThat(dispatcher.hunterMap).hasSize(1); verify(service).submit(any(BitmapHunter.class)); }
@Test public void testRemovingAndAddingEncodingHeaderReplacesDefaultThenAppends() { Builder builder = new Builder(); builder.setHeader("Accept-Encoding", (String) null); LazyHeaders headers = builder.build(); assertThat(headers.getHeaders()).doesNotContainKey("Accept-Encoding"); builder.addHeader("Accept-Encoding", "false"); headers = builder.build(); assertThat(headers.getHeaders()).containsEntry("Accept-Encoding", "false"); builder.addHeader("Accept-Encoding", "true"); headers = builder.build(); assertThat(headers.getHeaders()).containsEntry("Accept-Encoding", "false,true"); }
/** Fails if the map does not contain the given key. */ public void containsKey(@NullableDecl Object key) { delegate().containsKey(key); }
@Test public void testFromToPb() { assertThat(Labels.fromPb(null).toPb()).isNull(); HashMap<String, String> pb = new HashMap<>(); assertThat(Labels.fromPb(pb).toPb()).isNull(); pb.put("a", "b"); assertThat(Labels.fromPb(pb).toPb()).isEqualTo(pb); pb.put("c", Data.NULL_STRING); assertThat(Labels.fromPb(pb).toPb()).isEqualTo(pb); Map<String, String> jsonNullMap = Data.nullOf(HashMap.class); assertThat(Data.isNull(Labels.fromPb(jsonNullMap).toPb())).isTrue(); }
@Test public void shouldRecordLastLoadedUrlForRequestWithAdditionalHeaders() { webView.loadUrl("http://example.com", null); assertThat(shadowOf(webView).getLastLoadedUrl()).isEqualTo("http://example.com"); assertThat(shadowOf(webView).getLastAdditionalHttpHeaders()).isNull(); Map<String, String> additionalHttpHeaders = new HashMap<>(1); additionalHttpHeaders.put("key1", "value1"); webView.loadUrl("http://example.com", additionalHttpHeaders); assertThat(shadowOf(webView).getLastLoadedUrl()).isEqualTo("http://example.com"); assertThat(shadowOf(webView).getLastAdditionalHttpHeaders()).isNotNull(); assertThat(shadowOf(webView).getLastAdditionalHttpHeaders()).containsKey("key1"); assertThat(shadowOf(webView).getLastAdditionalHttpHeaders().get("key1")).isEqualTo("value1"); }
@AndroidIncompatible // Android forbids null parent ClassLoader public void testClassPathEntries_notURLClassLoader_noParent() { assertThat(ClassPath.Scanner.getClassPathEntries(new ClassLoader(null) {})).isEmpty(); }
public void testMapSplitter_trimmedBoth() { Map<String, String> m = COMMA_SPLITTER .trimResults() .withKeyValueSeparator(Splitter.on(':').trimResults()) .split("boy : tom , girl: tina , cat : kitty , dog: tommy "); ImmutableMap<String, String> expected = ImmutableMap.of("boy", "tom", "girl", "tina", "cat", "kitty", "dog", "tommy"); assertThat(m).isEqualTo(expected); assertThat(m.entrySet()).containsExactlyElementsIn(expected.entrySet()).inOrder(); }
@Test public void disconnected() throws Exception { subscriptionManager.subscribe(subscription1, new SubscriptionManagerCallbackAdapter<Operation.Data>()); subscriptionTransportFactory.callback.onConnected(); subscriptionTransportFactory.callback.onMessage(new OperationServerMessage.ConnectionAcknowledge()); subscriptionManager.unsubscribe(subscription1); assertThat(subscriptionManager.subscriptions).isEmpty(); assertThat(subscriptionTransportFactory.subscriptionTransport.lastSentMessage).isInstanceOf(OperationClientMessage.Stop.class); assertThat(((OperationClientMessage.Stop) subscriptionTransportFactory.subscriptionTransport.lastSentMessage).subscriptionId).isEqualTo(idForSubscription(subscription1)); assertThat(subscriptionManager.timer.tasks).containsKey(RealSubscriptionManager.INACTIVITY_TIMEOUT_TIMER_TASK_ID); onStateChangeListener.awaitState(RealSubscriptionManager.State.DISCONNECTED, RealSubscriptionManager .INACTIVITY_TIMEOUT + 800, TimeUnit.MILLISECONDS); assertThat(subscriptionTransportFactory.subscriptionTransport.disconnectMessage).isInstanceOf(OperationClientMessage.Terminate.class); assertThat(subscriptionManager.timer.tasks).isEmpty(); }