### Question:
I18nManager extends AbstractService implements II18nManager { @Override public Map<String, ApsProperties> getLabelGroups() { return this.getCacheWrapper().getLabelGroups(); }  void setI18nDAO(II18nDAO i18nDao); void setLangManager(ILangManager langManager); void setCacheWrapper(II18nManagerCacheWrapper cacheWrapper); @Override void init(); @Override Map<String, ApsProperties> getLabelGroups(); @Override String renderLabel(String key, String renderingLang,
            boolean keyIfEmpty); @Override String renderLabel(String key, String renderingLang,
            boolean keyIfEmpty, Map<String, String> params); @Override String getLabel(String key, String langCode); @Override ApsProperties getLabelGroup(String key); @Override void addLabelGroup(String key, ApsProperties labels); @Override void deleteLabelGroup(String key); @Override void updateLabelGroup(String key, ApsProperties labels); @Override List<String> searchLabelsKey(String insertedText, boolean doSearchByKey,
            boolean doSearchByLang, String langCode);  }### Answer:
@Test public void testGetLabels() throws Throwable { Map<String, ApsProperties> labels = this.createMockLabels(); when(cacheWrapper.getLabelGroups()).thenReturn(labels); Map<String, ApsProperties> extractedLabels = this.i18nManager.getLabelGroups(); assertThat(extractedLabels.size(), is(3)); }