This adds a whole bunch of tests for UUIDBackfillTask. This required a
small change to be made in SignalServiceAddress. Currently,
SignalServiceAddress accesses a singleton cache to force updates to any
existing addresses after a UUID is discovered. This breaks a whole bunch
of test verification.
To workaround this, I've added a testing_ flag to modify the singleton
SignalServiceAddressCache to temporarily disable it. This is going to
cause problems if we ever enable test parallelization, but it's all we
can do for now.
This also adds in incremental backoff logic, changes some of the log
statements and disables the task on production.
Also, adopted some minor feedback Matthew provided in the draft PR,
including:
- Rename: {signal -> registered}RecipientsWithoutUUID
- Move to owsFailDebug instead of assertionFailure
- Adopt `IsNetworkConnectivityFailure` for discerning network failures
- Add some extra assertions around our registered/unregistered sets
|
||
|---|---|---|
| .. | ||
| ContactSortingTest.m | ||
| OWSDisappearingMessagesConfigurationTest.m | ||
| PhoneNumberTest.m | ||
| PhoneNumberTest.swift | ||
| PhoneNumberUtilTest.m | ||
| SignalRecipientTest.m | ||
| TSContactThreadTest.m | ||
| TSGroupThreadTest.m | ||
| TSThreadTest.m | ||
| UUIDBackfillTaskTest.swift | ||