This test-only change should have no user impact.
`PhoneNumberUtil.callingCode(fromCountryCode:)` was tested in two
places. This combines them and moves the tests to Swift.
* Go to chat list view after registration
* sync system contacts during registration
* Use explicit local credentials for storage service operations during registration
* fix tests
* Quick hack to get through double pin confirmation
* Finishing touches
* lint
* fix build
* reload phone number discoverability after storage service sync
* fix tests again
* Take chat auth on account and contact record initializers
* Change around branches for clarity in OWSUserProfile
* pr comments
* Split ChatServiceAuth into the same and AuthedAccount
* fix tests
* merge woes
This change should have no user impact.
Two changes:
1. Calling `advance(to: timeInThePast)` is now a fatal error.
2. Calling `advance(to: currentTime)` is now tested.
This change moves `PinSetupViewController`'s `isWeakPin` method to
`OWS2FAManager`, adds tests, and adds an additional length check.
This change should have no user impact and is useful for an upcoming
task.
* Interpret nil nextVerificationAttempt as a code not having been sent yet, not as no code able to be submitted
* Update request and submit verification code handlers to latest server spec
* Update CreateAccountResponse codes to match server spec
* Update ChangeNumberResponse codes to match server spec
* Rename some cases for clarity, propagate up network errors vs generic errors
* pr comments
* Finish registration in RegistrationCoordinator
* Get tests to compile again (but not pass)
* Tests passing again
* Test session happy path all the way through to completion
* Test KBS auth credential happy path all the way through to completion
* Test KBS reg recovery password happy path all the way through to completion
* PR comments
* Add ability to compute registration recovery password
* Add RegistrationCoordinator
* remove repeat nav controller that evan added
* Scaffolding for RegistrationCoodinator test
* Add first round of RegistrationCoordinator tests, some stuff I needed to get them working, and some fixes to RegistrationCoordinator itself I discovered thanks to the tests
* switch to owsFailBeta
* Add auth credential candidate flow tests, related fixes and additions to coordinator and friends
* Add tests for session based registration path and associated fixes
* PR comment nits
* Add RegistrationSession object
* Add RegistrationSessionManager protocol
* Add skeleton RegistrationSessionManagerImpl - just kvstore persistence implemented
* Issue requests in RegistrationSessionManagerImpl
* let tests access the in memory kv store
* Add TSRequestOWSURLSessionMock. Rename OWSURLSessionMock
* Add DateProvider
* Take a dateProvider in RegistrationSessionManagerImpl
* Add tests for RegistrationSessionManager
* pre-emptively update timeout for tests. will remove once promise Scheduler code is merged
* PR comments
* Use Schedulers
This change should have no user impact.
I created a column in 8d707a9c74. I wanted
it to be a `BLOB`. I succeeded because [SQLite chooses `BLOB` by
default][0], but I wish I had been explicit.
I *could've* updated the migration, but didn't want to make a mistake
and cause divergent migrations. Instead, I added a comment.
I also updated a test.
[0]: https://www.sqlite.org/datatype3.html#determination_of_column_affinity
* Add deprecated prefix to all existing onboarding/registration types. (Will be forked to new versions later, potentially untouched)
* Mark old requests deprecated
* Put KeyBackupService in its own folder
* Put SDSKeyValueStore in its own directory
* Put SDSDatabaseStorage in its own directory
* Stop doing useless dispatches in SDSTransactable
* Add V2 DB classes
* Wrap SDSKeyValueStore in a protocol and factory
* Make TSConstantsProtocol public to take it as a param in other places
* Take explicit transactions and do single lookups in TSAccountManager registration state methods
* Take explicit transaction on OWS2FAManager
* Make KeyBackupService an instance that takes dependencies on init
* Protocolize KeyBackupService
* Put Dependencies+SSK in its own directory
* Add DependenciesBridge
* add ViewControllerContext
* used shared context in OnboardingController
* Don't check KeyBackupService in RemoteConfigManager; the one and only callsite already checks it separately
* All the random cleanup that needed to happen to get the app to build again.
* Add mock dbv2 classes
* Migrate existing KeyBackupServiceTests
* Namespace KBS shims
* DBV2 -> DB, after changing the min swiftlint type length to 2 chars
* add toy example
* Unwrap writes as reads
* pr comments
* pr comments 2: return of the nits
* final Pr comment
The successor to 389515b0fa.
This enables the "WebRTC-Network-UseNWPathMonitor" RingRTC field trial
for all users.
The hard part: adding a remote config kill switch. I added a bunch of
comments (and tests) to try to make the intention clear.