Skip to content
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

Align Autorageshake with web implementation #5639

Merged
merged 7 commits into from
Apr 12, 2022

Conversation

langleyd
Copy link
Member

Fixes #5596

@langleyd langleyd self-assigned this Mar 25, 2022
@github-actions
Copy link

github-actions bot commented Mar 25, 2022

Unit Test Results

114 files  +  8  114 suites  +8   1m 36s ⏱️ +3s
201 tests +13  201 ✔️ +13  0 💤 ±0  0 ±0 
674 runs  +52  674 ✔️ +52  0 💤 ±0  0 ±0 

Results for commit 363afd0. ± Comparison against base commit 1097436.

This pull request removes 2 and adds 15 tests. Note that renamed tests count towards both.
im.vector.app.features.onboarding.OnboardingViewModelTest ‑ given registration has started and has dummy step to do, when handling action, then ignores other steps and executes dummy
im.vector.app.features.onboarding.OnboardingViewModelTest ‑ when registering account, then updates state and emits account created event
im.vector.app.features.onboarding.DirectLoginUseCaseTest ‑ given direct authentication throws, when logging in directly, then returns failure result with original cause
im.vector.app.features.onboarding.DirectLoginUseCaseTest ‑ given wellknown fails with content, when logging in directly, then returns success with direct session result
im.vector.app.features.onboarding.DirectLoginUseCaseTest ‑ given wellknown fails without content, when logging in directly, then returns well known error
im.vector.app.features.onboarding.DirectLoginUseCaseTest ‑ given wellknown throws, when logging in directly, then returns failure result with original cause
im.vector.app.features.onboarding.DirectLoginUseCaseTest ‑ when logging in directly, then returns success with direct session result
im.vector.app.features.onboarding.OnboardingViewModelTest ‑ given has sign in with matrix id sign mode, when handling login or register action fails, then emits error
im.vector.app.features.onboarding.OnboardingViewModelTest ‑ given has sign in with matrix id sign mode, when handling login or register action, then logs in directly
im.vector.app.features.onboarding.OnboardingViewModelTest ‑ given personalisation enabled and registration has started and has dummy step to do, when handling action, then ignores other steps and executes dummy
im.vector.app.features.onboarding.OnboardingViewModelTest ‑ given personalisation enabled, when registering account, then updates state and emits account created event
im.vector.app.features.onboarding.OnboardingViewModelTest ‑ given when editing homeserver, then updates selected homeserver state and emits edited event
…

♻️ This comment has been updated with latest results.

@langleyd langleyd changed the title Align with web implementation Align Autorageshake with web implementation Mar 26, 2022
Copy link
Member

@bmarty bmarty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll defer to @BillCarsonFr review for the content of the change.
Just one remark about the changelog (a PR can have multiple changelog files)

session.getSyncStatusLive()
.asFlow()
.onEach {
hasSynced = it !is SyncStatusService.Status.Progressing
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not exaclty what we want no? Looks a bit strange. Also we are subscribing to the flow for the all session lifecycle no?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"For the lifetime of the session, confirm we are not in an initial sync", Being outside an initial sync I thought would be reasonably equivalent to after an initial sync.

Web uses the sync token, so equivalent to hasAlreadySynced. We could keep a reference to the active sessions and call hasAlreadySynced synchronously in enabled?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ganfra or @bmarty what would be the best way to check that an initial sync has already been done?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is acceptable.
Maybe we should rename SyncStatusService.Status.Progressing to SyncStatusService.Status.InitialSyncProgressing for clarity.

It's historical, previously we did not track the incremental sync status.

Copy link
Member

@bmarty bmarty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@langleyd langleyd merged commit 454a656 into develop Apr 12, 2022
@langleyd langleyd deleted the feature/dla/uisi_match_web_implementation branch April 12, 2022 09:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update UISI Auto-Reporting to match Web/iOS implementation
3 participants