From d44917a6965f2e1547d8466da0f549ae14be46cd Mon Sep 17 00:00:00 2001 From: viktorp Date: Mon, 31 Jul 2023 14:24:44 +0200 Subject: [PATCH] Add test for the new NativeLibAssigningBucket --- .../ruler/common/apk/ApkSanitizerTest.kt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/ruler-common/src/test/kotlin/com/spotify/ruler/common/apk/ApkSanitizerTest.kt b/ruler-common/src/test/kotlin/com/spotify/ruler/common/apk/ApkSanitizerTest.kt index bb3d19f1..52ba8bf0 100644 --- a/ruler-common/src/test/kotlin/com/spotify/ruler/common/apk/ApkSanitizerTest.kt +++ b/ruler-common/src/test/kotlin/com/spotify/ruler/common/apk/ApkSanitizerTest.kt @@ -16,6 +16,7 @@ package com.spotify.ruler.common.apk +import com.android.tools.profgen.Apk import com.google.common.truth.Truth.assertThat import com.spotify.ruler.common.sanitizer.ClassNameSanitizer import com.spotify.ruler.common.sanitizer.ResourceNameSanitizer @@ -120,6 +121,24 @@ class ApkSanitizerTest { assertThat(clean.type).isEqualTo(FileType.NATIVE_LIB) } + @Test + fun `Native files are assigned the correct type`() { + val dirty = ApkEntry.NativeLibrary("native-library.so", 1500, 3000, classes = listOf( + ApkEntry.Default("[section .rela.dyn]", 1000, 1000), + ApkEntry.Default("/buildbot/src/android/ndk-release-r21/external/libcxx/src/locale.cpp", 1000, 1000), + ApkEntry.Default("/external/libcxxabi/src/cxa_demangle.cpp", 1000, 1000), + )) + val clean = sanitizer.sanitize(listOf(dirty)) + + assertThat(clean).containsExactly( + AppFile("native-library.so/[section .rela.dyn]", + FileType.NATIVE_FILE, 500, 1000), + AppFile("/buildbot/src/android/ndk-release-r21/external/libcxx/src/locale.cpp", + FileType.NATIVE_FILE, 500, 1000), + AppFile("/external/libcxxabi/src/cxa_demangle.cpp", FileType.NATIVE_FILE, 500, 1000), + ) + } + @Test fun `Other files are assigned the correct type`() { val dirty = ApkEntry.Default("/META-INF/kotlin-stdlib-common.kotlin_module", 0, 0)