ApkFacetConfiguration implements FacetConfiguration { @NotNull public Map<String, String> getSymbolFolderPathMappings() { if (NATIVE_LIBRARIES.isEmpty()) { return Collections.emptyMap(); } Map<String, String> mappings = new HashMap<>(); for (NativeLibrary library : NATIVE_LIBRARIES) { mappings.putAll(library.pathMappings); } return mappings; }  @Override FacetEditorTab[] createEditorTabs(FacetEditorContext editorContext, FacetValidatorsManager validatorsManager); @NotNull Collection<String> getDebugSymbolFolderPaths(@NotNull List<Abi> abis); @NotNull Map<File, File> getExplicitModuleSymbolMap(@NotNull final Abi abi); @NotNull Map<String, String> getSymbolFolderPathMappings(); @Override void readExternal(@NotNull Element element); @Override void writeExternal(@NotNull Element element); @NotNull List<NativeLibrary> getLibrariesWithoutDebugSymbols(); void removeIssues(@NotNull String category); @NonNls public String APK_PATH; @NonNls public String APP_PACKAGE; @NotNull public List<SetupIssue> SETUP_ISSUES; @NotNull public List<NativeLibrary> NATIVE_LIBRARIES; @NotNull public Set<String> JAVA_SOURCE_FOLDER_PATHS; }
@Test public void getSymbolFolderPathMappings() { NativeLibrary library1 = new NativeLibrary("x.c"); library1.pathMappings.put("a1.so", "b1.so"); NativeLibrary library2 = new NativeLibrary("x.c"); library2.pathMappings.put("a2.so", "b2.so"); myConfiguration.NATIVE_LIBRARIES.add(library1); myConfiguration.NATIVE_LIBRARIES.add(library2); Map<String, String> mappings = myConfiguration.getSymbolFolderPathMappings(); assertThat(mappings).hasSize(2); assertThat(mappings).containsEntry("a1.so", "b1.so"); assertThat(mappings).containsEntry("a2.so", "b2.so"); }