-
Notifications
You must be signed in to change notification settings - Fork 999
MBL-2752 Onboarding analytics followup #2415
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MBL-2752 Onboarding analytics followup #2415
Conversation
β¦onal and reorder the screens in the flow
|
Codecov Reportβ
All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #2415 +/- ##
=========================================
Coverage 64.66% 64.66%
- Complexity 2404 2405 +1
=========================================
Files 375 375
Lines 28433 28432 -1
Branches 4124 4123 -1
=========================================
Hits 18386 18386
Misses 7782 7782
+ Partials 2265 2264 -1 β View full report in Codecov by Sentry. π New features to boost your workflow:
|
| primaryButton.performClick() // Welcome -> Save | ||
| Thread.sleep(500) | ||
| primaryButton.performClick() // Save -> Activity Tracking | ||
| Thread.sleep(500) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nitpick no need to change anything: not fan of Thread.sleep(), usually advanceUntilIdle() does the trick better. There are a few samples of it in LocationSheetTest where there is a debounce operator in place ->
android-oss/app/src/test/java/com/kickstarter/ui/activities/compose/search/LocationSheetTest.kt
Line 180 in 8abb8db
| advanceUntilIdle() // Account for debounce when tipping on search input |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yup I have a ticket in this sprint https://kickstarter.atlassian.net/browse/MBL-2727 to remove the Thread.sleeps in these tests
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was the debounce in LocationSheet implemented with coroutines? The onboarding button debounce was just implemented on the onclick without use of coroutines, so I didn't end up using advanceUntilIdle(). I used an injectable clock instead: #2417
π² What
Update new user heuristic to remove notifications permissions conditional and reorder the screens in the flow.
π€ Why
This new user heuristic will more strictly only show the onboarding flow to truly new users. Previously, the
||conditional showed a subset of existing users the onboarding flow which we do not want:Move the consent management screen closer to the front of the flow in order to get earlier consent for analytics.
π How
π See
π QA
On fresh install, verify that the new order of the screens in the flow is:
WELCOME
SAVE_PROJECTS
ACTIVITY_TRACKING
ENABLE_NOTIFICATIONS
SIGNUP_LOGIN
Story π
https://kickstarter.atlassian.net/browse/MBL-2752