@Override protected ImmutableMap<Class<?>, Thing> expectedThingMap() { ++expectedCallsForChildUnscopedThing; // unscoped Thing @Provides method is always called return new ImmutableMap.Builder<Class<?>, Thing>() .putAll(parentAsserts.expectedThingMap()) .put(ChildModule.class, thing(expectedCallsForChildUnscopedThing)) .put(ChildRegularScope.class, thing(expectedCallsForChildRegularScopeThing)) .put(ChildReleasableScope1.class, thing(expectedCallsForChildReleasableScope1Thing)) .put(ChildReleasableScope2.class, thing(expectedCallsForChildReleasableScope2Thing)) .build(); }