From 61adebba22c24774012d80dcf47454836cb058d4 Mon Sep 17 00:00:00 2001 From: fractalwrench Date: Tue, 5 Feb 2019 16:04:59 +0000 Subject: [PATCH 1/2] fix: prevent overwriting config.projectPackages if already set --- .../bugsnag/android/ProjectPackagesTest.kt | 26 +++++++++++++++++++ .../main/java/com/bugsnag/android/Client.java | 6 +++-- 2 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 sdk/src/androidTest/java/com/bugsnag/android/ProjectPackagesTest.kt diff --git a/sdk/src/androidTest/java/com/bugsnag/android/ProjectPackagesTest.kt b/sdk/src/androidTest/java/com/bugsnag/android/ProjectPackagesTest.kt new file mode 100644 index 0000000000..25512f1043 --- /dev/null +++ b/sdk/src/androidTest/java/com/bugsnag/android/ProjectPackagesTest.kt @@ -0,0 +1,26 @@ +package com.bugsnag.android + +import android.support.test.InstrumentationRegistry +import org.junit.Assert.assertArrayEquals +import org.junit.Assert.assertNull +import org.junit.Test + +class ProjectPackagesTest { + + @Test + fun testDefaultProjectPackages() { + val configuration = Configuration("api-key") + assertNull(configuration.projectPackages) + + val client = Client(InstrumentationRegistry.getContext(), configuration) + assertArrayEquals(arrayOf("com.bugsnag.android.test"), client.config.projectPackages) + } + + @Test + fun testProjectPackagesOverride() { + val configuration = Configuration("api-key") + configuration.projectPackages = arrayOf("com.foo.example") + val client = Client(InstrumentationRegistry.getContext(), configuration) + assertArrayEquals(arrayOf("com.foo.example"), client.config.projectPackages) + } +} diff --git a/sdk/src/main/java/com/bugsnag/android/Client.java b/sdk/src/main/java/com/bugsnag/android/Client.java index d8fbdc8839..9e5a5f2ffc 100644 --- a/sdk/src/main/java/com/bugsnag/android/Client.java +++ b/sdk/src/main/java/com/bugsnag/android/Client.java @@ -143,8 +143,10 @@ public Client(@NonNull Context androidContext, @NonNull Configuration configurat // Set up breadcrumbs breadcrumbs = new Breadcrumbs(configuration); - // Set sensible defaults - setProjectPackages(appContext.getPackageName()); + // Set sensible defaults if project packages not already set + if (config.getProjectPackages() == null) { + setProjectPackages(appContext.getPackageName()); + } String deviceId = deviceData.getId(); From 22fa1f546045754fc8dab6045179bfd5a090cbf4 Mon Sep 17 00:00:00 2001 From: fractalwrench Date: Tue, 5 Feb 2019 16:10:41 +0000 Subject: [PATCH 2/2] docs: add changelog entry --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 88b0579610..cce11b3699 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## 4.X.X (TBD) + +### Bug fixes + +* Prevent overwriting config.projectPackages if already set + [#428](https://github.com/bugsnag/bugsnag-android/pull/428) + ## 4.11.0 (2019-01-22) ### Enhancements