From fd24f9b88b01259b8ca92ecc3ae2e1b78cecb004 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Paczos?= Date: Tue, 2 Apr 2019 16:20:08 +0200 Subject: [android] disable leak canary during instrumentation tests --- platform/android/MapboxGLAndroidSDKTestApp/build.gradle | 2 +- .../java/com/mapbox/mapboxsdk/InstrumentationApplication.kt | 10 ++++++++++ .../java/com/mapbox/mapboxsdk/InstrumentationRunner.kt | 11 +++++++++++ .../java/com/mapbox/mapboxsdk/testapp/MapboxApplication.java | 2 +- 4 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/InstrumentationApplication.kt create mode 100644 platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/InstrumentationRunner.kt diff --git a/platform/android/MapboxGLAndroidSDKTestApp/build.gradle b/platform/android/MapboxGLAndroidSDKTestApp/build.gradle index 22222b0f50..190c279e03 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/build.gradle +++ b/platform/android/MapboxGLAndroidSDKTestApp/build.gradle @@ -9,7 +9,7 @@ android { targetSdkVersion androidVersions.targetSdkVersion versionCode 13 versionName "6.0.0" - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + testInstrumentationRunner "com.mapbox.mapboxsdk.InstrumentationRunner" } compileOptions { diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/InstrumentationApplication.kt b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/InstrumentationApplication.kt new file mode 100644 index 0000000000..ea48bdc00f --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/InstrumentationApplication.kt @@ -0,0 +1,10 @@ +package com.mapbox.mapboxsdk + +import com.mapbox.mapboxsdk.testapp.MapboxApplication + +class InstrumentationApplication : MapboxApplication() { + override fun initializeLeakCanary(): Boolean { + // do not initialize leak canary during instrumentation tests + return true + } +} \ No newline at end of file diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/InstrumentationRunner.kt b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/InstrumentationRunner.kt new file mode 100644 index 0000000000..6873b33262 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/InstrumentationRunner.kt @@ -0,0 +1,11 @@ +package com.mapbox.mapboxsdk + +import android.app.Application +import android.content.Context +import android.support.test.runner.AndroidJUnitRunner + +class InstrumentationRunner : AndroidJUnitRunner() { + override fun newApplication(cl: ClassLoader?, className: String?, context: Context?): Application { + return super.newApplication(cl, InstrumentationApplication::class.java.name, context) + } +} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MapboxApplication.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MapboxApplication.java index 9ade97f91e..d5cff301db 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MapboxApplication.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MapboxApplication.java @@ -40,7 +40,7 @@ public class MapboxApplication extends Application { initializeMapbox(); } - private boolean initializeLeakCanary() { + protected boolean initializeLeakCanary() { if (LeakCanary.isInAnalyzerProcess(this)) { // This process is dedicated to LeakCanary for heap analysis. // You should not init your app in this process. -- cgit v1.2.1