-
Notifications
You must be signed in to change notification settings - Fork 6
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
chore: Improve isSelfATeamMember UseCase (WPB-8978) #2924
Conversation
…efore returning default false value for isSelfATeamMember
Bencher
Click to view all benchmark results
Bencher - Continuous Benchmarking View Public Perf Page Docs | Repo | Chat | Help |
Datadog ReportBranch report: ✅ 0 Failed, 3039 Passed, 105 Skipped, 13.23s Total Time |
* chore: add slow sync repository to observe for last sync completion before returning default false value for isSelfATeamMember * chore: add parameter for SlowSyncRepository for new usage * tests: adjust existing tests for the usecase (cherry picked from commit 9dbf5f5)
* feat: Add Anonymous Analytics User Profile EPIC - (WPB-8978) (#2887) * feat: add analytics user profile - Part 1 (WPB-8978) (#2868) * feat: add method to set/insert tracking identifier into user metadata table * feat: add MessageContent for DataTransfer with TrackingIdentifier * feat: add DataTransferEventHandler to handle new data transfer events and set tracking identifier to user config metadata * chore: remove needless blank line * feat: add analytics user profile - Part 2 (WPB-8978) (#2877) * feat: add method to set/insert tracking identifier into user metadata table * feat: add MessageContent for DataTransfer with TrackingIdentifier * feat: add DataTransferEventHandler to handle new data transfer events and set tracking identifier to user config metadata * chore: remove needless blank line * feat: add get for current tracking identifier and get and set for previous tracking identifier * feat: add usage and logic handling for current and previous tracking identifiers * feat: add tests * feat: add better handling of receiving already existing tracking id and tests * feat: add new analytics logger to kalium logger * feat: add usecase to observe analytics tracking identifier * feat: add tests for observeAnalyticsTrackingIdentifierStatus * feat: add none AnalyticsIdentifierResult to be used in AR and remove abstract attribute * feat: add proper mapping to observer result and verification on Either Left is tracking identifier already exists * feat: add tests for observer with new logic * chore: add user scope logger * chore: add `as` instantiation of right value for usecase result * feat: move AnalyticsIdentifierResult to new data module and update its usages * feat: add usecase to delete previous tracking identifier * chore: add missing imports * test: add test for DeletePreviousTrackingIdentifierUseCase * chore: remove delete previous tracking identifier use case * feat: add extra sealed interface for better handling of analytics identifier result * feat: add AnalyticsIdentifierManager to handle migration complete and propagating tracking identifier * chore: add missing extension from new sealed interface * test: add tests for AnalyticsIdentifierManager * chore: adjust detekt * chore: remove unused import * chore: rename user config current tracking identifier * chore: add docs (cherry picked from commit f534d36) * feat: Add packing and sending DataTransfer message - (WPB-8978) (#2896) * feat: add syncManager to AnalyticsIdentifierManager in order to wait for current device to be available * feat: add implementation of packDataTransfer message * test: add tests (cherry picked from commit 337c415) * chore: Improve isSelfATeamMember UseCase (WPB-8978) (#2924) * chore: add slow sync repository to observe for last sync completion before returning default false value for isSelfATeamMember * chore: add parameter for SlowSyncRepository for new usage * tests: adjust existing tests for the usecase (cherry picked from commit 9dbf5f5)
PR Submission Checklist for internal contributors
The PR Title
SQPIT-764
The PR Description
What's new in this PR?
Issues
When first trying to get if self user is a team member, it would return the default(false) value if sync was not done before.
Causes (Optional)
Sync was not done prior to the retrieval of this value.
Solutions
Add SlowSyncRepository and observe last sync complete before returning a value, so it will now always get the correct value for the user.
Dependencies (Optional)
Needs releases with:
Testing
Test Coverage (Optional)
How to Test
Everything should continue running as is.