Remove unused performance tests
This commit is contained in:
parent
13f85596d7
commit
1daef3b202
4
Podfile
4
Podfile
@ -72,10 +72,6 @@ target 'Signal' do
|
||||
target 'SignalTests' do
|
||||
inherit! :search_paths
|
||||
end
|
||||
|
||||
target 'SignalPerformanceTests' do
|
||||
inherit! :search_paths
|
||||
end
|
||||
end
|
||||
|
||||
# These extensions inherit all of the common pods
|
||||
|
||||
@ -181,6 +181,6 @@ SPEC CHECKSUMS:
|
||||
Wire: f5fe13fcad476bfd248f23a45a2004167c0ebae2
|
||||
YYImage: f1ddd15ac032a58b78bbed1e012b50302d318331
|
||||
|
||||
PODFILE CHECKSUM: f71d937a5565d904f418d4b5db6b50a258bc3324
|
||||
PODFILE CHECKSUM: 95c4f99525deee15843974ec3317b5066cbe424e
|
||||
|
||||
COCOAPODS: 1.15.2
|
||||
|
||||
2
Pods
2
Pods
@ -1 +1 @@
|
||||
Subproject commit c027177617c2b89467cef2084fbab086cf90110a
|
||||
Subproject commit d06743a32e5ba0c1530de6e430f2598a1714fd7c
|
||||
@ -21,9 +21,7 @@
|
||||
1700E34128BD41150073D949 /* SetAlgebra+SSK.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1700E34028BD41140073D949 /* SetAlgebra+SSK.swift */; };
|
||||
1704690A25D4C326000793D8 /* SignalAttachmentTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1704690925D4C2E6000793D8 /* SignalAttachmentTest.swift */; };
|
||||
1704690C25D4C92B000793D8 /* test-jpg-rotated.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 1704690B25D4C92B000793D8 /* test-jpg-rotated.jpg */; };
|
||||
173878BE256341BB00AD39C7 /* SessionMigrationPerfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 173878BD256341BB00AD39C7 /* SessionMigrationPerfTest.swift */; };
|
||||
17ACF11E267D71E0009BE867 /* AudioSession+WebRTC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17ACF11D267D71E0009BE867 /* AudioSession+WebRTC.swift */; };
|
||||
17B78E0E260529E900E24A9E /* newlyInitializedSessionState in Resources */ = {isa = PBXBuildFile; fileRef = 17B78E0C2605299E00E24A9E /* newlyInitializedSessionState */; };
|
||||
17E6049028A17BD300127680 /* ZkGroupIntegrationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17E6048F28A17BD200127680 /* ZkGroupIntegrationTest.swift */; };
|
||||
17EC850C29133CDB00319C82 /* CancelledGroupRing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17EC850B29133CDB00319C82 /* CancelledGroupRing.swift */; };
|
||||
259D4DF2486F14DB112B3999 /* Pods_SignalServiceKitTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 91DA2BE463493965F5BC71C0 /* Pods_SignalServiceKitTests.framework */; };
|
||||
@ -154,7 +152,6 @@
|
||||
3406D33125DD832800885B14 /* payments_spinner_info_dark.json in Resources */ = {isa = PBXBuildFile; fileRef = 3406D32F25DD832700885B14 /* payments_spinner_info_dark.json */; };
|
||||
3406D33225DD832800885B14 /* payments_spinner_dark.json in Resources */ = {isa = PBXBuildFile; fileRef = 3406D33025DD832800885B14 /* payments_spinner_dark.json */; };
|
||||
340D900024FEE6A9007B5504 /* GroupInviteLinksUI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 340D8FFF24FEE6A9007B5504 /* GroupInviteLinksUI.swift */; };
|
||||
3412F9BB2350D0840022EDAA /* ThreadPerformanceTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3412F9BA2350D0840022EDAA /* ThreadPerformanceTest.swift */; };
|
||||
3414896925C9B6490098E3ED /* CurrencyPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3414896825C9B6490098E3ED /* CurrencyPickerViewController.swift */; };
|
||||
3415217525B0CB31009F177F /* CVAttachmentProgressView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3415217425B0CB30009F177F /* CVAttachmentProgressView.swift */; };
|
||||
34156C8B25A3B3D000556182 /* paymentSpinner.json in Resources */ = {isa = PBXBuildFile; fileRef = 34156C8A25A3B3D000556182 /* paymentSpinner.json */; };
|
||||
@ -303,7 +300,6 @@
|
||||
348815D025545C0A00D4F4C4 /* CVAttachments.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348815CF25545C0A00D4F4C4 /* CVAttachments.swift */; };
|
||||
34882C522694A9260013E289 /* ChatListViewController+Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34882C512694A9260013E289 /* ChatListViewController+Notifications.swift */; };
|
||||
3488F9362191CC4000E524CC /* CVMediaView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3488F9352191CC4000E524CC /* CVMediaView.swift */; };
|
||||
348A9C35234E462D00789068 /* ThreadFinderPerformanceTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348A9C34234E462D00789068 /* ThreadFinderPerformanceTest.swift */; };
|
||||
348BB25D20A0C5530047AEC2 /* ContactShareViewHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348BB25C20A0C5530047AEC2 /* ContactShareViewHelper.swift */; };
|
||||
348EE28E25B897BF00814FC2 /* CVMediaCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348EE28C25B897BF00814FC2 /* CVMediaCache.swift */; };
|
||||
348EE28F25B897BF00814FC2 /* ReusableMediaView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348EE28D25B897BF00814FC2 /* ReusableMediaView.swift */; };
|
||||
@ -340,7 +336,6 @@
|
||||
349A5C5425CD7A6C00B30EE8 /* DebugContactsUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 349A5C5325CD7A6C00B30EE8 /* DebugContactsUtils.swift */; };
|
||||
349D21E9268E045500D98870 /* QRCodeParserTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 349D21E7268E044700D98870 /* QRCodeParserTest.swift */; };
|
||||
34A17D81253F7237009F8C02 /* ConversationSettingsViewController+LegacyGroups.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34A17D80253F7236009F8C02 /* ConversationSettingsViewController+LegacyGroups.swift */; };
|
||||
34A4D56F24E4D342002F8044 /* UnfairLockPerformanceTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34A4D56E24E4D341002F8044 /* UnfairLockPerformanceTest.swift */; };
|
||||
34A4D87D2677A1EF00A794E7 /* ConversationViewController+CVComponentDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34A4D87C2677A1EF00A794E7 /* ConversationViewController+CVComponentDelegate.swift */; };
|
||||
34A4D87F2677B23100A794E7 /* ConversationViewController+MessageActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34A4D87E2677B23100A794E7 /* ConversationViewController+MessageActions.swift */; };
|
||||
34A4D8812677B2AB00A794E7 /* ConversationViewController+Calls.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34A4D8802677B2AB00A794E7 /* ConversationViewController+Calls.swift */; };
|
||||
@ -371,7 +366,6 @@
|
||||
34ACA7DB2733159600E47AD4 /* ProvisioningSplashViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACA7C32733159600E47AD4 /* ProvisioningSplashViewController.swift */; };
|
||||
34ACA7F62733183000E47AD4 /* RegistrationValues.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACA7F42733183000E47AD4 /* RegistrationValues.swift */; };
|
||||
34ACA7F72733183000E47AD4 /* CountryCodeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACA7F52733183000E47AD4 /* CountryCodeViewController.swift */; };
|
||||
34B14D8B24F0012100CC3A9A /* GroupsPerfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34B14D8A24F0012100CC3A9A /* GroupsPerfTest.swift */; };
|
||||
34B14D8D24F02A9600CC3A9A /* GroupLinkViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34B14D8C24F02A9500CC3A9A /* GroupLinkViewController.swift */; };
|
||||
34B14D8F24F41C4300CC3A9A /* GroupLinkQRCodeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34B14D8E24F41C4200CC3A9A /* GroupLinkQRCodeViewController.swift */; };
|
||||
34B3F8751E8DF1700035BE1A /* IndividualCallViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F83B1E8DF1700035BE1A /* IndividualCallViewController.swift */; };
|
||||
@ -385,9 +379,6 @@
|
||||
34BECE301F7ABCF800D7438D /* GifPickerLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BECE2F1F7ABCF800D7438D /* GifPickerLayout.swift */; };
|
||||
34C1A93B2656E905004FA478 /* MiscTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C1A93A2656E904004FA478 /* MiscTest.swift */; };
|
||||
34C3C78F2040A4F70000134C /* sonarping.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 34C3C78E2040A4F70000134C /* sonarping.mp3 */; };
|
||||
34C6B0A91FA0E46F00D35993 /* test-gif.gif in Resources */ = {isa = PBXBuildFile; fileRef = 34C6B0A51FA0E46F00D35993 /* test-gif.gif */; };
|
||||
34C6B0AB1FA0E46F00D35993 /* test-mp3.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 34C6B0A71FA0E46F00D35993 /* test-mp3.mp3 */; };
|
||||
34C6B0AC1FA0E46F00D35993 /* test-mp4.mp4 in Resources */ = {isa = PBXBuildFile; fileRef = 34C6B0A81FA0E46F00D35993 /* test-mp4.mp4 */; };
|
||||
34C6B0AE1FA0E4AA00D35993 /* test-jpg.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 34C6B0AD1FA0E4AA00D35993 /* test-jpg.jpg */; };
|
||||
34C7C7152625D8E100F4DC2A /* DebugUIMessages.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C7C7142625D8E100F4DC2A /* DebugUIMessages.swift */; };
|
||||
34CF0787203E6B78005C4D61 /* busy_tone_ansi.caf in Resources */ = {isa = PBXBuildFile; fileRef = 34CF0783203E6B77005C4D61 /* busy_tone_ansi.caf */; };
|
||||
@ -497,27 +488,6 @@
|
||||
46B99B83D9513F2B8641EAB1 /* Pods_SignalNSE.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7F965533D71CA51BE6704CC4 /* Pods_SignalNSE.framework */; };
|
||||
4C04392A220A9EC800BAEA63 /* VoiceNoteLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C043929220A9EC800BAEA63 /* VoiceNoteLock.swift */; };
|
||||
4C0CF6FA2386295400C9F818 /* tap_to_focus.json in Resources */ = {isa = PBXBuildFile; fileRef = 4C0CF6F92386295400C9F818 /* tap_to_focus.json */; };
|
||||
4C10B19523176D250099396B /* MarqueeLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45E5A6981F61E6DD001E4A8A /* MarqueeLabel.swift */; };
|
||||
4C10B1A723176D250099396B /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B60EDE031A05A01700D73516 /* AudioToolbox.framework */; };
|
||||
4C10B1A823176D250099396B /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B69CD25019773E79005CE69A /* XCTest.framework */; };
|
||||
4C10B1A923176D250099396B /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B9EB5ABC1884C002007CBB57 /* MessageUI.framework */; };
|
||||
4C10B1AA23176D250099396B /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 76C87F18181EFCE600C4ACAB /* MediaPlayer.framework */; };
|
||||
4C10B1AB23176D250099396B /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D221A091169C9E5E00537ABF /* CoreGraphics.framework */; };
|
||||
4C10B1AC23176D250099396B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A11CD70C17FA230600A2D1B1 /* QuartzCore.framework */; };
|
||||
4C10B1AD23176D250099396B /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A163E8AA16F3F6A90094D68B /* Security.framework */; };
|
||||
4C10B1B023176D250099396B /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A1FDCBEE16DAA6C300868894 /* AVFoundation.framework */; };
|
||||
4C10B1B123176D250099396B /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D2179CFB16BB0B3A0006F3AB /* CoreTelephony.framework */; };
|
||||
4C10B1B223176D250099396B /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D2179CFD16BB0B480006F3AB /* SystemConfiguration.framework */; };
|
||||
4C10B1B323176D250099396B /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D2AEACDB16C426DA00C364C0 /* CFNetwork.framework */; };
|
||||
4C10B1B423176D250099396B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D221A08D169C9E5E00537ABF /* UIKit.framework */; };
|
||||
4C10B1B523176D250099396B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D221A08F169C9E5E00537ABF /* Foundation.framework */; };
|
||||
4C10B1B823176D250099396B /* test-jpg.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 34C6B0AD1FA0E4AA00D35993 /* test-jpg.jpg */; };
|
||||
4C10B1B923176D250099396B /* whisperFake.cer in Resources */ = {isa = PBXBuildFile; fileRef = B660F69F1C29868000687D6E /* whisperFake.cer */; };
|
||||
4C10B1BA23176D250099396B /* test-gif.gif in Resources */ = {isa = PBXBuildFile; fileRef = 34C6B0A51FA0E46F00D35993 /* test-gif.gif */; };
|
||||
4C10B1BB23176D250099396B /* test-mp4.mp4 in Resources */ = {isa = PBXBuildFile; fileRef = 34C6B0A81FA0E46F00D35993 /* test-mp4.mp4 */; };
|
||||
4C10B1BC23176D250099396B /* test-mp3.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 34C6B0A71FA0E46F00D35993 /* test-mp3.mp3 */; };
|
||||
4C10B1C723176DD60099396B /* SDSPerformanceTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C10B1C623176DD60099396B /* SDSPerformanceTest.swift */; };
|
||||
4C10B1C9231778880099396B /* PerformanceBaseTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C10B1C8231778880099396B /* PerformanceBaseTest.swift */; };
|
||||
4C1885D2218F8E1C00B67051 /* PhotoGridViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C1885D1218F8E1C00B67051 /* PhotoGridViewCell.swift */; };
|
||||
4C20B2B920CA10DE001BAC90 /* ConversationSearchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C20B2B820CA10DE001BAC90 /* ConversationSearchViewController.swift */; };
|
||||
4C21D5D8223AC60F00EF8A77 /* CameraCaptureSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C21D5D7223AC60F00EF8A77 /* CameraCaptureSession.swift */; };
|
||||
@ -1316,7 +1286,6 @@
|
||||
76F958652A09A65B00B43E63 /* DebugUISyncMessages.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76F958642A09A65B00B43E63 /* DebugUISyncMessages.swift */; };
|
||||
76FCCDBC27AB8FBE00BAA7F0 /* MediaControls.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76FCCDBB27AB8FBE00BAA7F0 /* MediaControls.swift */; };
|
||||
83B9573927C9A1FA00A678FD /* CaptchaView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83B9573827C9A1FA00A678FD /* CaptchaView.swift */; };
|
||||
8458BA494F0FF3400E294907 /* Pods_SignalPerformanceTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5ECB75F96A467861ED52A1AF /* Pods_SignalPerformanceTests.framework */; };
|
||||
8803C2F528B02FDB00183D2B /* OutgoingStoryMessage+TSAttachmentMultisend.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8803C2F328B02FDB00183D2B /* OutgoingStoryMessage+TSAttachmentMultisend.swift */; };
|
||||
8803C2F628B02FDB00183D2B /* TSOutgoingMessage+TSAttachmentMultisend.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8803C2F428B02FDB00183D2B /* TSOutgoingMessage+TSAttachmentMultisend.swift */; };
|
||||
8803FF6628EF89B50023574A /* StorySharingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88F5FA9528EF7E02007AA1BF /* StorySharingTests.swift */; };
|
||||
@ -1548,7 +1517,6 @@
|
||||
A1A018531805C60D00A052A6 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D221A091169C9E5E00537ABF /* CoreGraphics.framework */; };
|
||||
A5E7C675248C5443007C949A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = A5E7C673248C5442007C949A /* InfoPlist.strings */; };
|
||||
B60EDE041A05A01700D73516 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B60EDE031A05A01700D73516 /* AudioToolbox.framework */; };
|
||||
B660F6D41C29868000687D6E /* whisperFake.cer in Resources */ = {isa = PBXBuildFile; fileRef = B660F69F1C29868000687D6E /* whisperFake.cer */; };
|
||||
B66DBF4A19D5BBC8006EA940 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B66DBF4919D5BBC8006EA940 /* Images.xcassets */; };
|
||||
B69CD25119773E79005CE69A /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B69CD25019773E79005CE69A /* XCTest.framework */; };
|
||||
B6B226971BE4B7D200860F4D /* ContactsUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B6B226961BE4B7D200860F4D /* ContactsUI.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
@ -1800,7 +1768,6 @@
|
||||
D9A85DC22BE1719C003F7045 /* MessageBackupGroupCallArchiver.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9A85DC12BE1719C003F7045 /* MessageBackupGroupCallArchiver.swift */; };
|
||||
D9AA37A02A86E0910088EFFB /* OutgoingCallEventSyncMessageTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9AA379F2A86E0910088EFFB /* OutgoingCallEventSyncMessageTest.swift */; };
|
||||
D9AA37A42A8A9A910088EFFB /* OutgoingGroupCallUpdateMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9AA37A32A8A9A910088EFFB /* OutgoingGroupCallUpdateMessage.swift */; };
|
||||
D9AB38D0283C38B10003C038 /* InteractionFinderPerformanceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9AB38CE283C38640003C038 /* InteractionFinderPerformanceTests.swift */; };
|
||||
D9AD1D9528B9955C00B42E6F /* TSInfoMessage+GroupUpdateType+NSAttributedStringTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9AD1D9428B9955C00B42E6F /* TSInfoMessage+GroupUpdateType+NSAttributedStringTest.swift */; };
|
||||
D9AE0ACB29162C160063488B /* TSAttachmentMultisendJobRecord.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9AE0ACA29162C160063488B /* TSAttachmentMultisendJobRecord.swift */; };
|
||||
D9AE0ACF29186D7F0063488B /* IncomingContactSyncJobRecord.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9AE0ACE29186D7F0063488B /* IncomingContactSyncJobRecord.swift */; };
|
||||
@ -2721,20 +2688,6 @@
|
||||
remoteGlobalIDString = 453518671FC635DD00210559;
|
||||
remoteInfo = SignalShareExtension;
|
||||
};
|
||||
4C10B18323176D250099396B /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = D221A080169C9E5E00537ABF /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = D221A088169C9E5E00537ABF;
|
||||
remoteInfo = Signal;
|
||||
};
|
||||
725465652BA03FEF00EABFD2 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = D221A080169C9E5E00537ABF /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = F9C5C896289451B900548EEE;
|
||||
remoteInfo = SignalServiceKit;
|
||||
};
|
||||
725465672BA03FF800EABFD2 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = D221A080169C9E5E00537ABF /* Project object */;
|
||||
@ -2852,9 +2805,7 @@
|
||||
1700E34028BD41140073D949 /* SetAlgebra+SSK.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "SetAlgebra+SSK.swift"; sourceTree = "<group>"; };
|
||||
1704690925D4C2E6000793D8 /* SignalAttachmentTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignalAttachmentTest.swift; sourceTree = "<group>"; };
|
||||
1704690B25D4C92B000793D8 /* test-jpg-rotated.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = "test-jpg-rotated.jpg"; sourceTree = "<group>"; };
|
||||
173878BD256341BB00AD39C7 /* SessionMigrationPerfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SessionMigrationPerfTest.swift; sourceTree = "<group>"; };
|
||||
17ACF11D267D71E0009BE867 /* AudioSession+WebRTC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AudioSession+WebRTC.swift"; sourceTree = "<group>"; };
|
||||
17B78E0C2605299E00E24A9E /* newlyInitializedSessionState */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = newlyInitializedSessionState; sourceTree = "<group>"; };
|
||||
17E6048F28A17BD200127680 /* ZkGroupIntegrationTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ZkGroupIntegrationTest.swift; sourceTree = "<group>"; };
|
||||
17EC850B29133CDB00319C82 /* CancelledGroupRing.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CancelledGroupRing.swift; sourceTree = "<group>"; };
|
||||
299F6904BB7E4C0E2463A169 /* Pods-SignalNSE.app store release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SignalNSE.app store release.xcconfig"; path = "Target Support Files/Pods-SignalNSE/Pods-SignalNSE.app store release.xcconfig"; sourceTree = "<group>"; };
|
||||
@ -2905,7 +2856,6 @@
|
||||
340B870D23DF3E3A00BE0AFC /* GroupV2UpdatesImpl.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GroupV2UpdatesImpl.swift; sourceTree = "<group>"; };
|
||||
340D8FFF24FEE6A9007B5504 /* GroupInviteLinksUI.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GroupInviteLinksUI.swift; sourceTree = "<group>"; };
|
||||
340E9ABF235F876800FA362C /* ForwardMessageViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ForwardMessageViewController.swift; sourceTree = "<group>"; };
|
||||
3412F9BA2350D0840022EDAA /* ThreadPerformanceTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThreadPerformanceTest.swift; sourceTree = "<group>"; };
|
||||
341458471FBE11C4005ABCF9 /* fa */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fa; path = translations/fa.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
3414896825C9B6490098E3ED /* CurrencyPickerViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CurrencyPickerViewController.swift; sourceTree = "<group>"; };
|
||||
3415217425B0CB30009F177F /* CVAttachmentProgressView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CVAttachmentProgressView.swift; sourceTree = "<group>"; };
|
||||
@ -3063,7 +3013,6 @@
|
||||
348815CF25545C0A00D4F4C4 /* CVAttachments.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CVAttachments.swift; sourceTree = "<group>"; };
|
||||
34882C512694A9260013E289 /* ChatListViewController+Notifications.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ChatListViewController+Notifications.swift"; sourceTree = "<group>"; };
|
||||
3488F9352191CC4000E524CC /* CVMediaView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CVMediaView.swift; sourceTree = "<group>"; };
|
||||
348A9C34234E462D00789068 /* ThreadFinderPerformanceTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThreadFinderPerformanceTest.swift; sourceTree = "<group>"; };
|
||||
348BB25C20A0C5530047AEC2 /* ContactShareViewHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactShareViewHelper.swift; sourceTree = "<group>"; };
|
||||
348C686C246B0B100039705A /* ThreadUtil.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThreadUtil.swift; sourceTree = "<group>"; };
|
||||
348EE28C25B897BF00814FC2 /* CVMediaCache.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CVMediaCache.swift; sourceTree = "<group>"; };
|
||||
@ -3105,7 +3054,6 @@
|
||||
349C3636233D198300D52012 /* LaunchJobs.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LaunchJobs.swift; sourceTree = "<group>"; };
|
||||
349D21E7268E044700D98870 /* QRCodeParserTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QRCodeParserTest.swift; sourceTree = "<group>"; };
|
||||
34A17D80253F7236009F8C02 /* ConversationSettingsViewController+LegacyGroups.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ConversationSettingsViewController+LegacyGroups.swift"; sourceTree = "<group>"; };
|
||||
34A4D56E24E4D341002F8044 /* UnfairLockPerformanceTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UnfairLockPerformanceTest.swift; sourceTree = "<group>"; };
|
||||
34A4D87C2677A1EF00A794E7 /* ConversationViewController+CVComponentDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ConversationViewController+CVComponentDelegate.swift"; sourceTree = "<group>"; };
|
||||
34A4D87E2677B23100A794E7 /* ConversationViewController+MessageActions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ConversationViewController+MessageActions.swift"; sourceTree = "<group>"; };
|
||||
34A4D8802677B2AB00A794E7 /* ConversationViewController+Calls.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ConversationViewController+Calls.swift"; sourceTree = "<group>"; };
|
||||
@ -3231,7 +3179,6 @@
|
||||
34ACA7F42733183000E47AD4 /* RegistrationValues.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RegistrationValues.swift; sourceTree = "<group>"; };
|
||||
34ACA7F52733183000E47AD4 /* CountryCodeViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CountryCodeViewController.swift; sourceTree = "<group>"; };
|
||||
34B0796E1FD07B1E00E248C2 /* SignalShareExtension.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = SignalShareExtension.entitlements; sourceTree = "<group>"; };
|
||||
34B14D8A24F0012100CC3A9A /* GroupsPerfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GroupsPerfTest.swift; sourceTree = "<group>"; };
|
||||
34B14D8C24F02A9500CC3A9A /* GroupLinkViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GroupLinkViewController.swift; sourceTree = "<group>"; };
|
||||
34B14D8E24F41C4200CC3A9A /* GroupLinkQRCodeViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GroupLinkQRCodeViewController.swift; sourceTree = "<group>"; };
|
||||
34B3F83B1E8DF1700035BE1A /* IndividualCallViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IndividualCallViewController.swift; sourceTree = "<group>"; };
|
||||
@ -3254,9 +3201,6 @@
|
||||
34BECE2F1F7ABCF800D7438D /* GifPickerLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GifPickerLayout.swift; sourceTree = "<group>"; };
|
||||
34C1A93A2656E904004FA478 /* MiscTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MiscTest.swift; sourceTree = "<group>"; };
|
||||
34C3C78E2040A4F70000134C /* sonarping.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; name = sonarping.mp3; path = Signal/AudioFiles/sonarping.mp3; sourceTree = SOURCE_ROOT; };
|
||||
34C6B0A51FA0E46F00D35993 /* test-gif.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "test-gif.gif"; sourceTree = "<group>"; };
|
||||
34C6B0A71FA0E46F00D35993 /* test-mp3.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = "test-mp3.mp3"; sourceTree = "<group>"; };
|
||||
34C6B0A81FA0E46F00D35993 /* test-mp4.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = "test-mp4.mp4"; sourceTree = "<group>"; };
|
||||
34C6B0AD1FA0E4AA00D35993 /* test-jpg.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = "test-jpg.jpg"; sourceTree = "<group>"; };
|
||||
34C7C7142625D8E100F4DC2A /* DebugUIMessages.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DebugUIMessages.swift; sourceTree = "<group>"; };
|
||||
34CA1C261F7156F300E51C51 /* MessageDetailViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MessageDetailViewController.swift; sourceTree = "<group>"; };
|
||||
@ -3382,9 +3326,6 @@
|
||||
4C046AA6236148880035B234 /* OWSGroupSyncProcessingJobQueue.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OWSGroupSyncProcessingJobQueue.swift; sourceTree = "<group>"; };
|
||||
4C090A1A210FD9C7001FD7F9 /* HapticFeedback.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HapticFeedback.swift; sourceTree = "<group>"; };
|
||||
4C0CF6F92386295400C9F818 /* tap_to_focus.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = tap_to_focus.json; sourceTree = "<group>"; };
|
||||
4C10B1C323176D250099396B /* SignalPerformanceTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SignalPerformanceTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
4C10B1C623176DD60099396B /* SDSPerformanceTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SDSPerformanceTest.swift; sourceTree = "<group>"; };
|
||||
4C10B1C8231778880099396B /* PerformanceBaseTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PerformanceBaseTest.swift; sourceTree = "<group>"; };
|
||||
4C1885D1218F8E1C00B67051 /* PhotoGridViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PhotoGridViewCell.swift; sourceTree = "<group>"; };
|
||||
4C1D2333218B692800A0598F /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = translations/ko.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
4C1D2335218B6A7600A0598F /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = translations/el.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
@ -4457,7 +4398,6 @@
|
||||
B646D1141AA54674004133BA /* hu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hu; path = translations/hu.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
B657DDC91911A40500F45B0C /* Signal.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = Signal.entitlements; sourceTree = "<group>"; };
|
||||
B660F69E1C29868000687D6E /* SignalTests-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "SignalTests-Info.plist"; sourceTree = "<group>"; };
|
||||
B660F69F1C29868000687D6E /* whisperFake.cer */ = {isa = PBXFileReference; lastKnownFileType = file; path = whisperFake.cer; sourceTree = "<group>"; };
|
||||
B66DBF4919D5BBC8006EA940 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
|
||||
B676BCEF1AA544E7009637B8 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = translations/de.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
B676BCF11AA5451E009637B8 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = translations/es.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
@ -4733,7 +4673,6 @@
|
||||
D9A85DC12BE1719C003F7045 /* MessageBackupGroupCallArchiver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessageBackupGroupCallArchiver.swift; sourceTree = "<group>"; };
|
||||
D9AA379F2A86E0910088EFFB /* OutgoingCallEventSyncMessageTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OutgoingCallEventSyncMessageTest.swift; sourceTree = "<group>"; };
|
||||
D9AA37A32A8A9A910088EFFB /* OutgoingGroupCallUpdateMessage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OutgoingGroupCallUpdateMessage.swift; sourceTree = "<group>"; };
|
||||
D9AB38CE283C38640003C038 /* InteractionFinderPerformanceTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InteractionFinderPerformanceTests.swift; sourceTree = "<group>"; };
|
||||
D9AD1D9428B9955C00B42E6F /* TSInfoMessage+GroupUpdateType+NSAttributedStringTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "TSInfoMessage+GroupUpdateType+NSAttributedStringTest.swift"; sourceTree = "<group>"; };
|
||||
D9AE0ACA29162C160063488B /* TSAttachmentMultisendJobRecord.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TSAttachmentMultisendJobRecord.swift; sourceTree = "<group>"; };
|
||||
D9AE0ACE29186D7F0063488B /* IncomingContactSyncJobRecord.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IncomingContactSyncJobRecord.swift; sourceTree = "<group>"; };
|
||||
@ -5683,27 +5622,6 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
4C10B1A623176D250099396B /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
4C10B1A723176D250099396B /* AudioToolbox.framework in Frameworks */,
|
||||
4C10B1B023176D250099396B /* AVFoundation.framework in Frameworks */,
|
||||
4C10B1B323176D250099396B /* CFNetwork.framework in Frameworks */,
|
||||
4C10B1AB23176D250099396B /* CoreGraphics.framework in Frameworks */,
|
||||
4C10B1B123176D250099396B /* CoreTelephony.framework in Frameworks */,
|
||||
4C10B1B523176D250099396B /* Foundation.framework in Frameworks */,
|
||||
4C10B1AA23176D250099396B /* MediaPlayer.framework in Frameworks */,
|
||||
4C10B1A923176D250099396B /* MessageUI.framework in Frameworks */,
|
||||
8458BA494F0FF3400E294907 /* Pods_SignalPerformanceTests.framework in Frameworks */,
|
||||
4C10B1AC23176D250099396B /* QuartzCore.framework in Frameworks */,
|
||||
4C10B1AD23176D250099396B /* Security.framework in Frameworks */,
|
||||
4C10B1B223176D250099396B /* SystemConfiguration.framework in Frameworks */,
|
||||
4C10B1B423176D250099396B /* UIKit.framework in Frameworks */,
|
||||
4C10B1A823176D250099396B /* XCTest.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
D221A086169C9E5E00537ABF /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -6649,11 +6567,8 @@
|
||||
children = (
|
||||
D99ABC762A3D132D0034CD3B /* blue-rectangle.png */,
|
||||
D99ABC792A3D1D710034CD3B /* semitransparent.png */,
|
||||
34C6B0A51FA0E46F00D35993 /* test-gif.gif */,
|
||||
1704690B25D4C92B000793D8 /* test-jpg-rotated.jpg */,
|
||||
34C6B0AD1FA0E4AA00D35993 /* test-jpg.jpg */,
|
||||
34C6B0A71FA0E46F00D35993 /* test-mp3.mp3 */,
|
||||
34C6B0A81FA0E46F00D35993 /* test-mp4.mp4 */,
|
||||
F927478928CFE9C60056EAFE /* test-png-with-metadata.png */,
|
||||
);
|
||||
path = Assets;
|
||||
@ -6765,22 +6680,6 @@
|
||||
name = Storyboards;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4C10B1C523176DB00099396B /* PerformanceTests */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
17B78E0C2605299E00E24A9E /* newlyInitializedSessionState */,
|
||||
34B14D8A24F0012100CC3A9A /* GroupsPerfTest.swift */,
|
||||
D9AB38CE283C38640003C038 /* InteractionFinderPerformanceTests.swift */,
|
||||
4C10B1C8231778880099396B /* PerformanceBaseTest.swift */,
|
||||
4C10B1C623176DD60099396B /* SDSPerformanceTest.swift */,
|
||||
173878BD256341BB00AD39C7 /* SessionMigrationPerfTest.swift */,
|
||||
348A9C34234E462D00789068 /* ThreadFinderPerformanceTest.swift */,
|
||||
3412F9BA2350D0840022EDAA /* ThreadPerformanceTest.swift */,
|
||||
34A4D56E24E4D341002F8044 /* UnfairLockPerformanceTest.swift */,
|
||||
);
|
||||
path = PerformanceTests;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4C3EF8002109184A0007EBF7 /* SSKTests */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@ -9029,7 +8928,6 @@
|
||||
349BC85F253A2651003C949A /* Groups */,
|
||||
458E38381D6699110094BD24 /* Models */,
|
||||
3471210D25ED5F850037CD1F /* Payments */,
|
||||
4C10B1C523176DB00099396B /* PerformanceTests */,
|
||||
66CDB75A2AFC42B6009A36EC /* Provisioning */,
|
||||
D99ABC712A3D0BAA0034CD3B /* QRCodes */,
|
||||
661278052996BA6700A1D5A1 /* Registration */,
|
||||
@ -9059,7 +8957,6 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
B660F69E1C29868000687D6E /* SignalTests-Info.plist */,
|
||||
B660F69F1C29868000687D6E /* whisperFake.cer */,
|
||||
);
|
||||
path = "Supporting Files";
|
||||
sourceTree = "<group>";
|
||||
@ -9255,7 +9152,6 @@
|
||||
children = (
|
||||
D221A089169C9E5E00537ABF /* Signal.app */,
|
||||
342FFE8827245850000AC89F /* SignalNSE.appex */,
|
||||
4C10B1C323176D250099396B /* SignalPerformanceTests.xctest */,
|
||||
F9C5C897289451B900548EEE /* SignalServiceKit.framework */,
|
||||
F9C5C89E289451B900548EEE /* SignalServiceKitTests.xctest */,
|
||||
453518681FC635DD00210559 /* SignalShareExtension.appex */,
|
||||
@ -11643,27 +11539,6 @@
|
||||
productReference = 453518681FC635DD00210559 /* SignalShareExtension.appex */;
|
||||
productType = "com.apple.product-type.app-extension";
|
||||
};
|
||||
4C10B17F23176D250099396B /* SignalPerformanceTests */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 4C10B1BF23176D250099396B /* Build configuration list for PBXNativeTarget "SignalPerformanceTests" */;
|
||||
buildPhases = (
|
||||
3247CA1180B2418B618844CB /* [CP] Check Pods Manifest.lock */,
|
||||
4C10B18523176D250099396B /* Sources */,
|
||||
4C10B1A623176D250099396B /* Frameworks */,
|
||||
4C10B1B723176D250099396B /* Resources */,
|
||||
07430245E642388F16E391C3 /* [CP] Embed Pods Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
725465662BA03FEF00EABFD2 /* PBXTargetDependency */,
|
||||
4C10B18223176D250099396B /* PBXTargetDependency */,
|
||||
);
|
||||
name = SignalPerformanceTests;
|
||||
productName = RedPhoneTests;
|
||||
productReference = 4C10B1C323176D250099396B /* SignalPerformanceTests.xctest */;
|
||||
productType = "com.apple.product-type.bundle.unit-test";
|
||||
};
|
||||
D221A088169C9E5E00537ABF /* Signal */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = D221A0BC169C9E5F00537ABF /* Build configuration list for PBXNativeTarget "Signal" */;
|
||||
@ -11903,7 +11778,6 @@
|
||||
D221A088169C9E5E00537ABF /* Signal */,
|
||||
D221A0A9169C9E5F00537ABF /* SignalTests */,
|
||||
453518671FC635DD00210559 /* SignalShareExtension */,
|
||||
4C10B17F23176D250099396B /* SignalPerformanceTests */,
|
||||
342FFE8727245850000AC89F /* SignalNSE */,
|
||||
34A954A7271A471200B05242 /* SignalUI */,
|
||||
34A954B0271A471300B05242 /* SignalUITests */,
|
||||
@ -11971,19 +11845,6 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
4C10B1B723176D250099396B /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
17B78E0E260529E900E24A9E /* newlyInitializedSessionState in Resources */,
|
||||
4C10B1BA23176D250099396B /* test-gif.gif in Resources */,
|
||||
4C10B1B823176D250099396B /* test-jpg.jpg in Resources */,
|
||||
4C10B1BC23176D250099396B /* test-mp3.mp3 in Resources */,
|
||||
4C10B1BB23176D250099396B /* test-mp4.mp4 in Resources */,
|
||||
4C10B1B923176D250099396B /* whisperFake.cer in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
D221A087169C9E5E00537ABF /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -12088,13 +11949,9 @@
|
||||
D99ABC782A3D132D0034CD3B /* blue-rectangle.png in Resources */,
|
||||
D99ABC7A2A3D1D710034CD3B /* semitransparent.png in Resources */,
|
||||
F927478B28CFEA680056EAFE /* test-apng.png in Resources */,
|
||||
34C6B0A91FA0E46F00D35993 /* test-gif.gif in Resources */,
|
||||
1704690C25D4C92B000793D8 /* test-jpg-rotated.jpg in Resources */,
|
||||
34C6B0AE1FA0E4AA00D35993 /* test-jpg.jpg in Resources */,
|
||||
34C6B0AB1FA0E46F00D35993 /* test-mp3.mp3 in Resources */,
|
||||
34C6B0AC1FA0E46F00D35993 /* test-mp4.mp4 in Resources */,
|
||||
F927478A28CFE9C60056EAFE /* test-png-with-metadata.png in Resources */,
|
||||
B660F6D41C29868000687D6E /* whisperFake.cer in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -12136,74 +11993,6 @@
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
07430245E642388F16E391C3 /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-SignalPerformanceTests/Pods-SignalPerformanceTests-frameworks.sh",
|
||||
"${BUILT_PRODUCTS_DIR}/CocoaLumberjack/CocoaLumberjack.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/GRDB.swift/GRDB.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/LibSignalClient/LibSignalClient.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/Mantle/Mantle.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/Reachability/Reachability.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SQLCipher/SQLCipher.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SignalCoreKit/SignalCoreKit.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SignalRingRTC/SignalRingRTC.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SwiftProtobuf/SwiftProtobuf.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/Wire/Wire.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/YYImage/YYImage.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/blurhash/blurhash.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/libPhoneNumber-iOS/libPhoneNumber_iOS.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/libwebp/libwebp.framework",
|
||||
"${PODS_XCFRAMEWORKS_BUILD_DIR}/SignalRingRTC/WebRTC/WebRTC.framework/WebRTC",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CocoaLumberjack.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GRDB.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/LibSignalClient.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Mantle.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Reachability.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SQLCipher.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SignalCoreKit.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SignalRingRTC.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftProtobuf.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Wire.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/YYImage.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/blurhash.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/libPhoneNumber_iOS.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/libwebp.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/WebRTC.framework",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-SignalPerformanceTests/Pods-SignalPerformanceTests-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
3247CA1180B2418B618844CB /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||
"${PODS_ROOT}/Manifest.lock",
|
||||
);
|
||||
name = "[CP] Check Pods Manifest.lock";
|
||||
outputFileListPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
"$(DERIVED_FILE_DIR)/Pods-SignalPerformanceTests-checkManifestLockResult.txt",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
34C239432180B01B00B6108F /* Run Script: update_plist_info */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -12789,22 +12578,6 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
4C10B18523176D250099396B /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
34B14D8B24F0012100CC3A9A /* GroupsPerfTest.swift in Sources */,
|
||||
D9AB38D0283C38B10003C038 /* InteractionFinderPerformanceTests.swift in Sources */,
|
||||
4C10B19523176D250099396B /* MarqueeLabel.swift in Sources */,
|
||||
4C10B1C9231778880099396B /* PerformanceBaseTest.swift in Sources */,
|
||||
4C10B1C723176DD60099396B /* SDSPerformanceTest.swift in Sources */,
|
||||
173878BE256341BB00AD39C7 /* SessionMigrationPerfTest.swift in Sources */,
|
||||
348A9C35234E462D00789068 /* ThreadFinderPerformanceTest.swift in Sources */,
|
||||
3412F9BB2350D0840022EDAA /* ThreadPerformanceTest.swift in Sources */,
|
||||
34A4D56F24E4D342002F8044 /* UnfairLockPerformanceTest.swift in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
D221A085169C9E5E00537ABF /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -14923,16 +14696,6 @@
|
||||
target = 453518671FC635DD00210559 /* SignalShareExtension */;
|
||||
targetProxy = 453518701FC635DD00210559 /* PBXContainerItemProxy */;
|
||||
};
|
||||
4C10B18223176D250099396B /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = D221A088169C9E5E00537ABF /* Signal */;
|
||||
targetProxy = 4C10B18323176D250099396B /* PBXContainerItemProxy */;
|
||||
};
|
||||
725465662BA03FEF00EABFD2 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = F9C5C896289451B900548EEE /* SignalServiceKit */;
|
||||
targetProxy = 725465652BA03FEF00EABFD2 /* PBXContainerItemProxy */;
|
||||
};
|
||||
725465682BA03FF800EABFD2 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = F9C5C896289451B900548EEE /* SignalServiceKit */;
|
||||
@ -16314,196 +16077,6 @@
|
||||
};
|
||||
name = "Testable Release";
|
||||
};
|
||||
4C10B1C023176D250099396B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 4C9C3DDD0CC5FB4FD9AD7D0B /* Pods-SignalPerformanceTests.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/Signal.app/Signal";
|
||||
CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
DEFINES_MODULE = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SRCROOT)",
|
||||
);
|
||||
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||
GCC_GENERATE_TEST_COVERAGE_FILES = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "Signal/Signal-Prefix.pch";
|
||||
GCC_VERSION = "";
|
||||
GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = NO;
|
||||
GCC_WARN_STRICT_SELECTOR_MATCH = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"${PODS_HEADERS_SEARCH_PATHS}",
|
||||
"$(inherited)",
|
||||
"\"${SRCROOT}/Signal/lib/speex/include\"",
|
||||
"\"${SRCROOT}/Signal/lib/ogg/include\"",
|
||||
"\"${SRCROOT}/Signal/lib/debug/include\"",
|
||||
"\"$(SRCROOT)/libtommath\"",
|
||||
"\"$(SRCROOT)/libtomcrypt/headers\"",
|
||||
"\"$(SRCROOT)/spandsp/spandsp/spandsp\"",
|
||||
"\"$(SRCROOT)/Libraries\"/**",
|
||||
"\"$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources\"",
|
||||
);
|
||||
INFOPLIST_FILE = "Signal/test/Supporting Files/SignalTests-Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SRCROOT)",
|
||||
);
|
||||
OTHER_CFLAGS = (
|
||||
"$(inherited)",
|
||||
"-fobjc-arc-exceptions",
|
||||
);
|
||||
OTHER_LDFLAGS = (
|
||||
"-all_load",
|
||||
"-ObjC",
|
||||
"$(inherited)",
|
||||
);
|
||||
OTHER_SWIFT_FLAGS = "$(inherited) -D DEBUG";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "$(SIGNAL_BUNDLEID_PREFIX).${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE = "";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
TEST_HOST = "$(BUNDLE_LOADER)";
|
||||
VALID_ARCHS = "arm64 armv7s armv7 i386 x86_64";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
4C10B1C123176D250099396B /* App Store Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = EAACBA1288D17F91D3A923FD /* Pods-SignalPerformanceTests.app store release.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/Signal.app/Signal";
|
||||
CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
DEFINES_MODULE = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SRCROOT)",
|
||||
);
|
||||
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||
GCC_GENERATE_TEST_COVERAGE_FILES = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "Signal/Signal-Prefix.pch";
|
||||
GCC_VERSION = "";
|
||||
GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = NO;
|
||||
GCC_WARN_STRICT_SELECTOR_MATCH = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"${PODS_HEADERS_SEARCH_PATHS}",
|
||||
"$(inherited)",
|
||||
"\"${SRCROOT}/Signal/lib/speex/include\"",
|
||||
"\"${SRCROOT}/Signal/lib/ogg/include\"",
|
||||
"\"${SRCROOT}/Signal/lib/debug/include\"",
|
||||
"\"$(SRCROOT)/libtommath\"",
|
||||
"\"$(SRCROOT)/libtomcrypt/headers\"",
|
||||
"\"$(SRCROOT)/Libraries\"/**",
|
||||
"\"$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources\"",
|
||||
);
|
||||
INFOPLIST_FILE = "Signal/test/Supporting Files/SignalTests-Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SRCROOT)",
|
||||
);
|
||||
OTHER_CFLAGS = (
|
||||
"$(inherited)",
|
||||
"-fobjc-arc-exceptions",
|
||||
);
|
||||
OTHER_LDFLAGS = (
|
||||
"-all_load",
|
||||
"-ObjC",
|
||||
"$(inherited)",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "$(SIGNAL_BUNDLEID_PREFIX).${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE = "";
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
||||
TEST_HOST = "$(BUNDLE_LOADER)";
|
||||
VALID_ARCHS = "arm64 armv7s armv7 i386 x86_64";
|
||||
};
|
||||
name = "App Store Release";
|
||||
};
|
||||
4C10B1C223176D250099396B /* Testable Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = FD85D9C5018FDE6A08D30CDE /* Pods-SignalPerformanceTests.testable release.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/Signal.app/Signal";
|
||||
CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
DEFINES_MODULE = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SRCROOT)",
|
||||
);
|
||||
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||
GCC_GENERATE_TEST_COVERAGE_FILES = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "Signal/Signal-Prefix.pch";
|
||||
GCC_VERSION = "";
|
||||
GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = NO;
|
||||
GCC_WARN_STRICT_SELECTOR_MATCH = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"${PODS_HEADERS_SEARCH_PATHS}",
|
||||
"$(inherited)",
|
||||
"\"${SRCROOT}/Signal/lib/speex/include\"",
|
||||
"\"${SRCROOT}/Signal/lib/ogg/include\"",
|
||||
"\"${SRCROOT}/Signal/lib/debug/include\"",
|
||||
"\"$(SRCROOT)/libtommath\"",
|
||||
"\"$(SRCROOT)/libtomcrypt/headers\"",
|
||||
"\"$(SRCROOT)/Libraries\"/**",
|
||||
"\"$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources\"",
|
||||
);
|
||||
INFOPLIST_FILE = "Signal/test/Supporting Files/SignalTests-Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SRCROOT)",
|
||||
);
|
||||
OTHER_CFLAGS = (
|
||||
"$(inherited)",
|
||||
"-fobjc-arc-exceptions",
|
||||
);
|
||||
OTHER_LDFLAGS = (
|
||||
"-all_load",
|
||||
"-ObjC",
|
||||
"$(inherited)",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "$(SIGNAL_BUNDLEID_PREFIX).${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE = "";
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
||||
TEST_HOST = "$(BUNDLE_LOADER)";
|
||||
VALID_ARCHS = "arm64 armv7s armv7 i386 x86_64";
|
||||
};
|
||||
name = "Testable Release";
|
||||
};
|
||||
88238EA724EAD2FD00F28079 /* Profiling */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -16768,69 +16341,6 @@
|
||||
};
|
||||
name = Profiling;
|
||||
};
|
||||
88238EAC24EAD2FD00F28079 /* Profiling */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = A850CF324A284B6439049771 /* Pods-SignalPerformanceTests.profiling.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/Signal.app/Signal";
|
||||
CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
DEFINES_MODULE = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SRCROOT)",
|
||||
);
|
||||
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||
GCC_GENERATE_TEST_COVERAGE_FILES = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "Signal/Signal-Prefix.pch";
|
||||
GCC_VERSION = "";
|
||||
GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = NO;
|
||||
GCC_WARN_STRICT_SELECTOR_MATCH = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"${PODS_HEADERS_SEARCH_PATHS}",
|
||||
"$(inherited)",
|
||||
"\"${SRCROOT}/Signal/lib/speex/include\"",
|
||||
"\"${SRCROOT}/Signal/lib/ogg/include\"",
|
||||
"\"${SRCROOT}/Signal/lib/debug/include\"",
|
||||
"\"$(SRCROOT)/libtommath\"",
|
||||
"\"$(SRCROOT)/libtomcrypt/headers\"",
|
||||
"\"$(SRCROOT)/Libraries\"/**",
|
||||
"\"$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources\"",
|
||||
);
|
||||
INFOPLIST_FILE = "Signal/test/Supporting Files/SignalTests-Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SRCROOT)",
|
||||
);
|
||||
OTHER_CFLAGS = (
|
||||
"$(inherited)",
|
||||
"-fobjc-arc-exceptions",
|
||||
);
|
||||
OTHER_LDFLAGS = (
|
||||
"-all_load",
|
||||
"-ObjC",
|
||||
"$(inherited)",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "$(SIGNAL_BUNDLEID_PREFIX).${PRODUCT_NAME:rfc1034identifier}";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE = "";
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
||||
TEST_HOST = "$(BUNDLE_LOADER)";
|
||||
VALID_ARCHS = "arm64 armv7s armv7 i386 x86_64";
|
||||
};
|
||||
name = Profiling;
|
||||
};
|
||||
D221A0BA169C9E5F00537ABF /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -17743,17 +17253,6 @@
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = "App Store Release";
|
||||
};
|
||||
4C10B1BF23176D250099396B /* Build configuration list for PBXNativeTarget "SignalPerformanceTests" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
4C10B1C023176D250099396B /* Debug */,
|
||||
4C10B1C123176D250099396B /* App Store Release */,
|
||||
88238EAC24EAD2FD00F28079 /* Profiling */,
|
||||
4C10B1C223176D250099396B /* Testable Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = "App Store Release";
|
||||
};
|
||||
D221A083169C9E5E00537ABF /* Build configuration list for PBXProject "Signal" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
|
||||
@ -20,20 +20,6 @@
|
||||
ReferencedContainer = "container:Signal.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "NO"
|
||||
buildForProfiling = "NO"
|
||||
buildForArchiving = "NO"
|
||||
buildForAnalyzing = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "4C10B17F23176D250099396B"
|
||||
BuildableName = "SignalPerformanceTests.xctest"
|
||||
BlueprintName = "SignalPerformanceTests"
|
||||
ReferencedContainer = "container:Signal.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
@ -93,16 +79,6 @@
|
||||
ReferencedContainer = "container:Signal.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
<TestableReference
|
||||
skipped = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "4C10B17F23176D250099396B"
|
||||
BuildableName = "SignalPerformanceTests.xctest"
|
||||
BlueprintName = "SignalPerformanceTests"
|
||||
ReferencedContainer = "container:Signal.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 675 KiB |
Binary file not shown.
Binary file not shown.
@ -1,55 +0,0 @@
|
||||
//
|
||||
// Copyright 2020 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import LibSignalClient
|
||||
import SignalServiceKit
|
||||
import XCTest
|
||||
|
||||
class GroupsPerfTest: PerformanceBaseTest {
|
||||
|
||||
private let iterationCount: UInt64 = DebugFlags.fastPerfTests ? 5 : 5 * 1000
|
||||
|
||||
func testMembershipSerialization() {
|
||||
setUpIteration()
|
||||
|
||||
let membership = Self.buildMembership()
|
||||
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: true) {
|
||||
for _ in 0..<iterationCount {
|
||||
let data = try! Self.serialize(membership: membership)
|
||||
let copy = try! Self.deserialize(data: data)
|
||||
assert(membership == copy)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static func buildMembership() -> GroupMembership {
|
||||
let memberCount: UInt = 32
|
||||
|
||||
var builder = GroupMembership.Builder()
|
||||
for _ in 0..<memberCount {
|
||||
builder.addFullMember(Aci.randomForTesting(), role: .`normal`)
|
||||
}
|
||||
for _ in 0..<memberCount {
|
||||
builder.addInvitedMember(Aci.randomForTesting(), role: .`normal`, addedByAci: Aci.randomForTesting())
|
||||
}
|
||||
for _ in 0..<memberCount {
|
||||
builder.addRequestingMember(Aci.randomForTesting())
|
||||
}
|
||||
for i in 0..<memberCount {
|
||||
builder.addBannedMember(Aci.randomForTesting(), bannedAtTimestamp: UInt64(i))
|
||||
}
|
||||
return builder.build()
|
||||
}
|
||||
|
||||
static func serialize(membership: GroupMembership) throws -> Data {
|
||||
try NSKeyedArchiver.archivedData(withRootObject: membership, requiringSecureCoding: false)
|
||||
}
|
||||
|
||||
static func deserialize(data: Data) throws -> GroupMembership {
|
||||
try NSKeyedUnarchiver.unarchivedObject(ofClass: GroupMembership.self, from: data, requiringSecureCoding: false)!
|
||||
}
|
||||
}
|
||||
@ -1,42 +0,0 @@
|
||||
//
|
||||
// Copyright 2022 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
//
|
||||
|
||||
import XCTest
|
||||
|
||||
@testable import SignalServiceKit
|
||||
|
||||
class InteractionFinderPerformanceTests: PerformanceBaseTest {
|
||||
|
||||
func testPerf_getAppBadgeCount() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
let nThreads = UInt(200)
|
||||
let nMessagesPerThread = UInt(10)
|
||||
|
||||
setUpIteration()
|
||||
simulateIncomingMessages(inThreads: nThreads, messagesPerThread: nMessagesPerThread)
|
||||
|
||||
startMeasuring()
|
||||
read { transaction in
|
||||
let unreadCount = InteractionFinder.unreadCountInAllThreads(transaction: transaction)
|
||||
XCTAssertEqual(unreadCount, nThreads * nMessagesPerThread)
|
||||
}
|
||||
stopMeasuring()
|
||||
}
|
||||
}
|
||||
|
||||
private func simulateIncomingMessages(inThreads threadCount: UInt, messagesPerThread: UInt) {
|
||||
write { transaction in
|
||||
let threadFactory = ContactThreadFactory()
|
||||
let threads = threadFactory.create(count: threadCount, transaction: transaction)
|
||||
|
||||
for thread in threads {
|
||||
let messageFactory = IncomingMessageFactory()
|
||||
messageFactory.threadCreator = { _ in return thread }
|
||||
|
||||
_ = messageFactory.create(count: messagesPerThread, transaction: transaction)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,31 +0,0 @@
|
||||
//
|
||||
// Copyright 2019 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import XCTest
|
||||
import SignalServiceKit
|
||||
|
||||
public class PerformanceBaseTest: XCTestCase {
|
||||
|
||||
// MARK: Hooks
|
||||
|
||||
func setUpIteration() {
|
||||
MockSSKEnvironment.activate()
|
||||
}
|
||||
|
||||
// MARK: Helpers
|
||||
|
||||
public func read(_ block: @escaping (SDSAnyReadTransaction) -> Void) {
|
||||
return databaseStorage.read(block: block)
|
||||
}
|
||||
|
||||
public func write(_ block: @escaping (SDSAnyWriteTransaction) -> Void) {
|
||||
return databaseStorage.write(block: block)
|
||||
}
|
||||
|
||||
public func asyncWrite(_ block: @escaping (SDSAnyWriteTransaction) -> Void) {
|
||||
return databaseStorage.asyncWrite(block: block)
|
||||
}
|
||||
}
|
||||
@ -1,126 +0,0 @@
|
||||
//
|
||||
// Copyright 2019 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import XCTest
|
||||
import SignalServiceKit
|
||||
|
||||
class SDSPerformanceTest: PerformanceBaseTest {
|
||||
|
||||
// MARK: - Insert Messages
|
||||
|
||||
func testPerf_insertMessages() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
insertMessages()
|
||||
}
|
||||
}
|
||||
|
||||
func insertMessages() {
|
||||
let contactThread = ContactThreadFactory().create()
|
||||
|
||||
read { transaction in
|
||||
XCTAssertEqual(1, TSThread.anyFetchAll(transaction: transaction).count)
|
||||
XCTAssertEqual(0, TSInteraction.anyFetchAll(transaction: transaction).count)
|
||||
}
|
||||
|
||||
let messageCount = DebugFlags.fastPerfTests ? 5 : 100
|
||||
var uniqueIds = [String]()
|
||||
|
||||
let messageFactory = OutgoingMessageFactory()
|
||||
messageFactory.threadCreator = { _ in return contactThread }
|
||||
|
||||
startMeasuring()
|
||||
write { transaction in
|
||||
for _ in 0..<messageCount {
|
||||
let message = messageFactory.build(transaction: transaction)
|
||||
message.anyInsert(transaction: transaction)
|
||||
uniqueIds.append(message.uniqueId)
|
||||
}
|
||||
}
|
||||
stopMeasuring()
|
||||
|
||||
read { transaction in
|
||||
XCTAssertEqual(1, TSThread.anyFetchAll(transaction: transaction).count)
|
||||
XCTAssertEqual(messageCount, TSInteraction.anyFetchAll(transaction: transaction).count)
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - Fetch Messages
|
||||
|
||||
func testPerf_fetchMessages() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
fetchMessages()
|
||||
}
|
||||
}
|
||||
|
||||
func fetchMessages() {
|
||||
let messageCount = DebugFlags.fastPerfTests ? 5 : 100
|
||||
let fetchCount = messageCount * 5
|
||||
|
||||
var uniqueIds = [String]()
|
||||
write { transaction in
|
||||
XCTAssert(TSInteraction.anyCount(transaction: transaction) == 0)
|
||||
|
||||
for _ in 0..<messageCount {
|
||||
let message = OutgoingMessageFactory().create(transaction: transaction)
|
||||
uniqueIds.append(message.uniqueId)
|
||||
}
|
||||
}
|
||||
|
||||
startMeasuring()
|
||||
read { transaction in
|
||||
for _ in 0..<fetchCount {
|
||||
let message = TSOutgoingMessage.anyFetch(uniqueId: uniqueIds.randomElement()!, transaction: transaction)
|
||||
XCTAssertNotNil(message)
|
||||
}
|
||||
}
|
||||
stopMeasuring()
|
||||
}
|
||||
|
||||
// MARK: - Enumerate Messages
|
||||
|
||||
func testPerf_enumerateMessagesUnbatched() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
enumerateMessages(batched: false)
|
||||
}
|
||||
}
|
||||
|
||||
func testPerf_enumerateMessagesBatched() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
enumerateMessages(batched: true)
|
||||
}
|
||||
}
|
||||
|
||||
func enumerateMessages(batched: Bool) {
|
||||
let messageCount = DebugFlags.fastPerfTests ? 5 : 100
|
||||
let enumerationCount = 10
|
||||
|
||||
var uniqueIds = [String]()
|
||||
write { transaction in
|
||||
XCTAssert(TSInteraction.anyCount(transaction: transaction) == 0)
|
||||
|
||||
for _ in 0..<messageCount {
|
||||
let message = OutgoingMessageFactory().create(transaction: transaction)
|
||||
uniqueIds.append(message.uniqueId)
|
||||
}
|
||||
}
|
||||
|
||||
startMeasuring()
|
||||
read { transaction in
|
||||
var enumeratedCount = 0
|
||||
for _ in 0..<enumerationCount {
|
||||
TSInteraction.anyEnumerate(transaction: transaction, batched: batched) { _, _ in
|
||||
enumeratedCount += 1
|
||||
}
|
||||
}
|
||||
XCTAssertEqual(enumeratedCount, messageCount * enumerationCount)
|
||||
}
|
||||
stopMeasuring()
|
||||
}
|
||||
}
|
||||
@ -1,125 +0,0 @@
|
||||
//
|
||||
// Copyright 2020 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import XCTest
|
||||
import SignalServiceKit
|
||||
import LibSignalClient
|
||||
|
||||
class SessionMigrationPerfTest: PerformanceBaseTest {
|
||||
static let newlyInitializedSessionStateData: Data = {
|
||||
let dataURL = Bundle(for: SessionMigrationPerfTest.self).url(forResource: "newlyInitializedSessionState",
|
||||
withExtension: "")!
|
||||
return try! Data(contentsOf: dataURL)
|
||||
}()
|
||||
|
||||
static func makeNewlyInitializedSessionState() -> LegacySessionState {
|
||||
try! NSKeyedUnarchiver.unarchivedObject(
|
||||
ofClass: LegacySessionState.self,
|
||||
from: newlyInitializedSessionStateData,
|
||||
requiringSecureCoding: false
|
||||
)!
|
||||
}
|
||||
|
||||
func makeDeepSession(depth: Int = 2000) -> LegacySessionRecord {
|
||||
let session = LegacySessionRecord()!
|
||||
|
||||
for _ in 1...5 {
|
||||
session.archiveCurrentState()
|
||||
|
||||
let state = Self.makeNewlyInitializedSessionState()
|
||||
session.setState(state)
|
||||
|
||||
state.receivingChains = (1...5).map { _ in
|
||||
let senderRatchetKey = ECKeyPair.generateKeyPair().publicKey
|
||||
let chain = LegacyReceivingChain(chainKey: LegacyChainKey(data: senderRatchetKey, index: 0),
|
||||
senderRatchetKey: senderRatchetKey)!
|
||||
let dummyKeys = LegacyMessageKeys(cipherKey: Data(repeating: 1, count: 32),
|
||||
macKey: Data(repeating: 2, count: 32),
|
||||
iv: Data(repeating: 3, count: 16),
|
||||
index: 0)!
|
||||
chain.messageKeysList.addObjects(from: Array(repeating: dummyKeys, count: depth))
|
||||
return chain
|
||||
}
|
||||
}
|
||||
|
||||
return session
|
||||
}
|
||||
|
||||
override func setUp() {
|
||||
super.setUp()
|
||||
setUpIteration()
|
||||
}
|
||||
|
||||
func testSerializeDeepSession() {
|
||||
let x = makeDeepSession()
|
||||
measure {
|
||||
_ = try! x.serializeProto()
|
||||
}
|
||||
}
|
||||
|
||||
func testDeserializeDeepSession() {
|
||||
let x = makeDeepSession()
|
||||
let data = try! x.serializeProto()
|
||||
measure {
|
||||
_ = try! LegacySessionRecord(serializedProto: data)
|
||||
}
|
||||
}
|
||||
|
||||
func testUnarchiveDeepSession() throws {
|
||||
let x = makeDeepSession()
|
||||
let data = try NSKeyedArchiver.archivedData(withRootObject: x, requiringSecureCoding: true)
|
||||
measure {
|
||||
do {
|
||||
_ = try NSKeyedUnarchiver.unarchivedObject(ofClass: type(of: x), from: data)
|
||||
} catch {
|
||||
XCTFail("unarchiving failed")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func testMigrateDeepSession() {
|
||||
let x = makeDeepSession()
|
||||
let data = try! x.serializeProto()
|
||||
measure {
|
||||
_ = try! SessionRecord(bytes: data)
|
||||
}
|
||||
}
|
||||
|
||||
func testSerializeSomewhatDeepSession() {
|
||||
let x = makeDeepSession(depth: 200)
|
||||
measure {
|
||||
_ = try! x.serializeProto()
|
||||
}
|
||||
}
|
||||
|
||||
func testDeserializeSomewhatDeepSession() {
|
||||
let x = makeDeepSession(depth: 200)
|
||||
let data = try! x.serializeProto()
|
||||
measure {
|
||||
_ = try! LegacySessionRecord(serializedProto: data)
|
||||
}
|
||||
}
|
||||
|
||||
func testUnarchiveSomewhatDeepSession() throws {
|
||||
let x = makeDeepSession(depth: 200)
|
||||
let data = try NSKeyedArchiver.archivedData(withRootObject: x, requiringSecureCoding: true)
|
||||
measure {
|
||||
do {
|
||||
_ = try NSKeyedUnarchiver.unarchivedObject(ofClass: type(of: x), from: data)
|
||||
} catch {
|
||||
XCTFail("unarchiving failed")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func testMigrateSomewhatDeepSession() {
|
||||
let x = makeDeepSession(depth: 200)
|
||||
let data = try! x.serializeProto()
|
||||
measure {
|
||||
_ = try! SessionRecord(bytes: data)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,190 +0,0 @@
|
||||
//
|
||||
// Copyright 2019 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import XCTest
|
||||
import SignalServiceKit
|
||||
|
||||
class ThreadFinderPerformanceTest: PerformanceBaseTest {
|
||||
|
||||
func testPerf_enumerateVisibleThreads() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
enumerateVisibleThreads(isArchived: false)
|
||||
}
|
||||
}
|
||||
|
||||
func testPerf_enumerateVisibleThreads_isArchived() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
enumerateVisibleThreads(isArchived: true)
|
||||
}
|
||||
}
|
||||
|
||||
func enumerateVisibleThreads(isArchived: Bool) {
|
||||
// To properly stress GRDB, we want a large number
|
||||
// of threads with a large number of messages.
|
||||
//
|
||||
// NOTE: the total thread count is 4 x threadCount.
|
||||
let threadCount = DebugFlags.fastPerfTests ? 5 : 100
|
||||
var emptyThreads = [TSThread]()
|
||||
var hasMessageThreads = [TSThread]()
|
||||
var archivedThreads = [TSThread]()
|
||||
var unarchivedThreads = [TSThread]()
|
||||
for _ in 0..<threadCount {
|
||||
emptyThreads.append(insertThread(threadType: .empty))
|
||||
hasMessageThreads.append(insertThread(threadType: .hasMessage))
|
||||
archivedThreads.append(insertThread(threadType: .archived))
|
||||
unarchivedThreads.append(insertThread(threadType: .unarchived))
|
||||
}
|
||||
|
||||
XCTAssertEqual(threadCount, emptyThreads.count)
|
||||
XCTAssertEqual(threadCount, hasMessageThreads.count)
|
||||
XCTAssertEqual(threadCount, archivedThreads.count)
|
||||
XCTAssertEqual(threadCount, unarchivedThreads.count)
|
||||
|
||||
read { transaction in
|
||||
XCTAssertEqual(threadCount * 4, TSThread.anyFetchAll(transaction: transaction).count)
|
||||
|
||||
let expectedMessageCount = (
|
||||
// .hasMessage
|
||||
(threadCount * self.threadMessageCount) +
|
||||
// .archived
|
||||
(threadCount * self.threadMessageCount) +
|
||||
// .unarchived
|
||||
(threadCount * (self.threadMessageCount + 1))
|
||||
)
|
||||
XCTAssertEqual(expectedMessageCount, TSInteraction.anyFetchAll(transaction: transaction).count)
|
||||
}
|
||||
|
||||
// Note that we enumerate _twice_ (archived & non-archived)
|
||||
let readCount = DebugFlags.fastPerfTests ? 2 : 10
|
||||
|
||||
read { transaction in
|
||||
self.startMeasuring()
|
||||
for _ in 0..<readCount {
|
||||
var observedCount = 0
|
||||
do {
|
||||
try ThreadFinder().enumerateVisibleThreads(isArchived: isArchived, transaction: transaction) { _ in
|
||||
observedCount += 1
|
||||
}
|
||||
} catch {
|
||||
owsFailDebug("Error: \(error)")
|
||||
}
|
||||
let expectedArchivedCount = threadCount * 1
|
||||
let expectedUnarchivedCount = threadCount * 2
|
||||
let expectedCount = isArchived ? expectedArchivedCount : expectedUnarchivedCount
|
||||
XCTAssertEqual(expectedCount, observedCount)
|
||||
}
|
||||
self.stopMeasuring()
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - insertThreads
|
||||
|
||||
enum ThreadType: Int {
|
||||
case empty
|
||||
case hasMessage
|
||||
case archived
|
||||
case unarchived
|
||||
}
|
||||
|
||||
func insertThreads(count: Int, threadType: ThreadType) -> [TSThread] {
|
||||
var result = [TSThread]()
|
||||
for _ in 0..<count {
|
||||
result.append(insertThread(threadType: threadType))
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
private let threadMessageCount = DebugFlags.fastPerfTests ? 2 : 10
|
||||
|
||||
func insertThread(threadType: ThreadType) -> TSThread {
|
||||
// .empty
|
||||
let contactThread = ContactThreadFactory().create()
|
||||
XCTAssertFalse(contactThread.shouldThreadBeVisible)
|
||||
if threadType == .empty {
|
||||
return contactThread
|
||||
}
|
||||
|
||||
// .hasMessage
|
||||
let messageFactory = OutgoingMessageFactory()
|
||||
messageFactory.threadCreator = { _ in return contactThread }
|
||||
write { transaction in
|
||||
if let latestThread = TSThread.anyFetch(uniqueId: contactThread.uniqueId, transaction: transaction) {
|
||||
XCTAssertFalse(latestThread.shouldThreadBeVisible)
|
||||
XCTAssertFalse(ThreadAssociatedData.fetchOrDefault(for: latestThread, transaction: transaction).isArchived)
|
||||
} else {
|
||||
XCTFail("Missing thread.")
|
||||
}
|
||||
|
||||
for _ in 0..<self.threadMessageCount {
|
||||
let message = messageFactory.build(transaction: transaction)
|
||||
message.anyInsert(transaction: transaction)
|
||||
}
|
||||
|
||||
if let latestThread = TSThread.anyFetch(uniqueId: contactThread.uniqueId, transaction: transaction) {
|
||||
XCTAssertTrue(latestThread.shouldThreadBeVisible)
|
||||
XCTAssertFalse(ThreadAssociatedData.fetchOrDefault(for: latestThread, transaction: transaction).isArchived)
|
||||
} else {
|
||||
XCTFail("Missing thread.")
|
||||
}
|
||||
}
|
||||
if threadType == .hasMessage {
|
||||
return contactThread
|
||||
}
|
||||
|
||||
// .archived
|
||||
write { transaction in
|
||||
if let latestThread = TSThread.anyFetch(uniqueId: contactThread.uniqueId, transaction: transaction) {
|
||||
XCTAssertTrue(latestThread.shouldThreadBeVisible)
|
||||
XCTAssertFalse(ThreadAssociatedData.fetchOrDefault(for: latestThread, transaction: transaction).isArchived)
|
||||
} else {
|
||||
XCTFail("Missing thread.")
|
||||
}
|
||||
|
||||
ThreadAssociatedData.fetchOrDefault(
|
||||
for: contactThread,
|
||||
transaction: transaction
|
||||
).updateWith(
|
||||
isArchived: true,
|
||||
updateStorageService: false,
|
||||
transaction: transaction
|
||||
)
|
||||
|
||||
if let latestThread = TSThread.anyFetch(uniqueId: contactThread.uniqueId, transaction: transaction) {
|
||||
XCTAssertTrue(latestThread.shouldThreadBeVisible)
|
||||
XCTAssertTrue(ThreadAssociatedData.fetchOrDefault(for: latestThread, transaction: transaction).isArchived)
|
||||
} else {
|
||||
XCTFail("Missing thread.")
|
||||
}
|
||||
}
|
||||
if threadType == .archived {
|
||||
return contactThread
|
||||
}
|
||||
|
||||
// .unarchived
|
||||
write { transaction in
|
||||
if let latestThread = TSThread.anyFetch(uniqueId: contactThread.uniqueId, transaction: transaction) {
|
||||
XCTAssertTrue(latestThread.shouldThreadBeVisible)
|
||||
XCTAssertTrue(ThreadAssociatedData.fetchOrDefault(for: latestThread, transaction: transaction).isArchived)
|
||||
} else {
|
||||
XCTFail("Missing thread.")
|
||||
}
|
||||
|
||||
let message = messageFactory.build(transaction: transaction)
|
||||
message.anyInsert(transaction: transaction)
|
||||
|
||||
if let latestThread = TSThread.anyFetch(uniqueId: contactThread.uniqueId, transaction: transaction) {
|
||||
XCTAssertTrue(latestThread.shouldThreadBeVisible)
|
||||
XCTAssertFalse(ThreadAssociatedData.fetchOrDefault(for: latestThread, transaction: transaction).isArchived)
|
||||
} else {
|
||||
XCTFail("Missing thread.")
|
||||
}
|
||||
}
|
||||
|
||||
return contactThread
|
||||
}
|
||||
}
|
||||
@ -1,102 +0,0 @@
|
||||
//
|
||||
// Copyright 2019 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import XCTest
|
||||
import SignalServiceKit
|
||||
|
||||
class ThreadPerformanceTest: PerformanceBaseTest {
|
||||
|
||||
let threadCount = DebugFlags.fastPerfTests ? 2 : 10
|
||||
let interactionCount: UInt = DebugFlags.fastPerfTests ? 5 : 100
|
||||
|
||||
// MARK: - writeThreadAndInteractions
|
||||
|
||||
func testPerf_writeThreadAndInteractions() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
writeThreadAndInteractions()
|
||||
}
|
||||
}
|
||||
|
||||
func writeThreadAndInteractions() {
|
||||
let threadFactory = ContactThreadFactory()
|
||||
threadFactory.messageCount = interactionCount
|
||||
write { transaction in
|
||||
self.startMeasuring()
|
||||
|
||||
for _ in 0..<self.threadCount {
|
||||
_ = threadFactory.create(transaction: transaction)
|
||||
}
|
||||
|
||||
self.stopMeasuring()
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - writeAndDeleteThreadAndInteractions
|
||||
|
||||
func testPerf_writeAndDeleteThreadAndInteractions() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
writeAndDeleteThreadAndInteractions()
|
||||
}
|
||||
}
|
||||
|
||||
func writeAndDeleteThreadAndInteractions() {
|
||||
let threadFactory = ContactThreadFactory()
|
||||
threadFactory.messageCount = interactionCount
|
||||
write { transaction in
|
||||
self.startMeasuring()
|
||||
|
||||
for _ in 0..<self.threadCount {
|
||||
_ = threadFactory.create(transaction: transaction)
|
||||
}
|
||||
|
||||
TSInteraction.anyRemoveAllWithInstantiation(transaction: transaction)
|
||||
TSThread.anyFetchAll(transaction: transaction).forEach { $0.softDelete(with: transaction) }
|
||||
|
||||
self.stopMeasuring()
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - writeAndUpdateAndDeleteThreadAndInteractions
|
||||
|
||||
func testPerf_writeAndUpdateAndDeleteThreadAndInteractions() {
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: false) {
|
||||
setUpIteration()
|
||||
writeAndUpdateAndDeleteThreadAndInteractions()
|
||||
}
|
||||
}
|
||||
|
||||
func writeAndUpdateAndDeleteThreadAndInteractions() {
|
||||
let threadFactory = ContactThreadFactory()
|
||||
threadFactory.messageCount = interactionCount
|
||||
write { transaction in
|
||||
self.startMeasuring()
|
||||
|
||||
for _ in 0..<self.threadCount {
|
||||
_ = threadFactory.create(transaction: transaction)
|
||||
}
|
||||
|
||||
let interactionIds = TSInteraction.anyAllUniqueIds(transaction: transaction)
|
||||
for interactionId in interactionIds {
|
||||
guard let interaction = TSInteraction.anyFetch(uniqueId: interactionId, transaction: transaction) else {
|
||||
owsFailDebug("Missing interaction.")
|
||||
continue
|
||||
}
|
||||
guard let message = interaction as? TSMessage else {
|
||||
owsFailDebug("Invalid interaction.")
|
||||
continue
|
||||
}
|
||||
message.update(withMessageBody: "hiya", transaction: transaction)
|
||||
}
|
||||
|
||||
TSInteraction.anyRemoveAllWithInstantiation(transaction: transaction)
|
||||
TSThread.anyFetchAll(transaction: transaction).forEach { $0.softDelete(with: transaction) }
|
||||
|
||||
self.stopMeasuring()
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,53 +0,0 @@
|
||||
//
|
||||
// Copyright 2020 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import XCTest
|
||||
import SignalServiceKit
|
||||
|
||||
class UnfairLockPerformanceTest: PerformanceBaseTest {
|
||||
|
||||
private let iterationCount: UInt64 = DebugFlags.fastPerfTests ? 100 : 1000 * 1000
|
||||
|
||||
// A simple "happy path" test with no contention or load.
|
||||
func testUnfairLock() {
|
||||
let unfairLock = UnfairLock()
|
||||
var protectedValue: UInt64 = 0
|
||||
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: true) {
|
||||
for _ in 0..<iterationCount {
|
||||
unfairLock.withLock {
|
||||
protectedValue += 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if protectedValue == iterationCount {
|
||||
Logger.verbose("Values match.")
|
||||
} else {
|
||||
owsFailDebug("Value do not match.")
|
||||
}
|
||||
}
|
||||
|
||||
// A simple "happy path" test with no contention or load.
|
||||
func testSerialQueue() {
|
||||
let fairQueue = DispatchQueue(label: "UnfairLockPerformanceTest")
|
||||
var protectedValue: UInt64 = 0
|
||||
|
||||
measureMetrics(XCTestCase.defaultPerformanceMetrics, automaticallyStartMeasuring: true) {
|
||||
for _ in 0..<iterationCount {
|
||||
fairQueue.sync {
|
||||
protectedValue += 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if protectedValue == iterationCount {
|
||||
Logger.verbose("Values match.")
|
||||
} else {
|
||||
owsFailDebug("Value do not match.")
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user