From 98630cca509e328352d224e1e23cd9cf1825ccb0 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Fri, 21 Sep 2018 09:21:34 -0400 Subject: [PATCH] Respond to CR; add db utility methods to test base classes. --- Signal.xcodeproj/project.pbxproj | 4 --- Signal/test/SignalBaseTest.h | 5 +++ Signal/test/SignalBaseTest.m | 15 +++++++++ .../ConversationViewItemTest.m | 4 +-- Signal/test/contact/OWSContactsManagerTest.m | 16 ---------- .../tests/Account/SignedPreKeyDeletionTests.m | 8 ++--- .../tests/Contacts/SignalRecipientTest.m | 21 +++--------- .../Interactions/TSOutgoingMessageTest.m | 32 ++++++++----------- .../OWSDisappearingMessageFinderTest.m | 16 ++-------- .../Messages/OWSDisappearingMessagesJobTest.m | 4 +-- .../Messages/OWSIncomingMessageFinderTest.m | 12 +++---- SignalServiceKit/tests/SSKBaseTest.h | 5 +++ SignalServiceKit/tests/SSKBaseTest.m | 15 +++++++++ .../Storage/TSStorageIdentityKeyStoreTests.m | 6 ++-- .../tests/Util/TSMessageStorageTests.m | 21 ++++++------ 15 files changed, 86 insertions(+), 98 deletions(-) delete mode 100644 Signal/test/contact/OWSContactsManagerTest.m diff --git a/Signal.xcodeproj/project.pbxproj b/Signal.xcodeproj/project.pbxproj index 5f830cb94..5e8c55c58 100644 --- a/Signal.xcodeproj/project.pbxproj +++ b/Signal.xcodeproj/project.pbxproj @@ -487,7 +487,6 @@ B633C5C41A1D190B0059AC12 /* mute_on@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = B633C5421A1D190B0059AC12 /* mute_on@2x.png */; }; B633C5CE1A1D190B0059AC12 /* quit@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = B633C54C1A1D190B0059AC12 /* quit@2x.png */; }; B633C5D21A1D190B0059AC12 /* savephoto@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = B633C5501A1D190B0059AC12 /* savephoto@2x.png */; }; - B660F6BB1C29868000687D6E /* OWSContactsManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = B660F6761C29867F00687D6E /* OWSContactsManagerTest.m */; }; B660F6D21C29868000687D6E /* PushManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = B660F69C1C29868000687D6E /* PushManagerTest.m */; }; B660F6D41C29868000687D6E /* whisperFake.cer in Resources */ = {isa = PBXBuildFile; fileRef = B660F69F1C29868000687D6E /* whisperFake.cer */; }; B660F6DB1C29868000687D6E /* FunctionalUtilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = B660F6AD1C29868000687D6E /* FunctionalUtilTest.m */; }; @@ -1191,7 +1190,6 @@ B646D1141AA54674004133BA /* hu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hu; path = translations/hu.lproj/Localizable.strings; sourceTree = ""; }; B646D1151AA5467E004133BA /* it_IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it_IT; path = translations/it_IT.lproj/Localizable.strings; sourceTree = ""; }; B657DDC91911A40500F45B0C /* Signal.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = Signal.entitlements; sourceTree = ""; }; - B660F6761C29867F00687D6E /* OWSContactsManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OWSContactsManagerTest.m; sourceTree = ""; }; B660F69C1C29868000687D6E /* PushManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PushManagerTest.m; sourceTree = ""; }; B660F69E1C29868000687D6E /* SignalTests-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "SignalTests-Info.plist"; sourceTree = ""; }; B660F69F1C29868000687D6E /* whisperFake.cer */ = {isa = PBXFileReference; lastKnownFileType = file; path = whisperFake.cer; sourceTree = ""; }; @@ -2343,7 +2341,6 @@ B660F6751C29867F00687D6E /* contact */ = { isa = PBXGroup; children = ( - B660F6761C29867F00687D6E /* OWSContactsManagerTest.m */, 954AEE681DF33D32002E5410 /* ContactsPickerTest.swift */, ); path = contact; @@ -3493,7 +3490,6 @@ 4C3EF802210918740007EBF7 /* SSKProtoEnvelopeTest.swift in Sources */, 452D1AF12081059C00A67F7F /* StringAdditionsTest.swift in Sources */, 4C4BC6C32102D697004040C9 /* ContactDiscoveryOperationTest.swift in Sources */, - B660F6BB1C29868000687D6E /* OWSContactsManagerTest.m in Sources */, B660F6D21C29868000687D6E /* PushManagerTest.m in Sources */, 455AC69E1F4F8B0300134004 /* ImageCacheTest.swift in Sources */, 34E8A8D12085238A00B272B1 /* ProtoParsingTest.m in Sources */, diff --git a/Signal/test/SignalBaseTest.h b/Signal/test/SignalBaseTest.h index 2bf84d41c..15fa1628f 100644 --- a/Signal/test/SignalBaseTest.h +++ b/Signal/test/SignalBaseTest.h @@ -5,11 +5,16 @@ #import "MockEnvironment.h" #import #import +#import NS_ASSUME_NONNULL_BEGIN @interface SignalBaseTest : XCTestCase +- (void)readWithBlock:(void (^)(YapDatabaseReadTransaction *transaction))block; + +- (void)readWriteWithBlock:(void (^)(YapDatabaseReadWriteTransaction *transaction))block; + @end NS_ASSUME_NONNULL_END diff --git a/Signal/test/SignalBaseTest.m b/Signal/test/SignalBaseTest.m index c9f6f08a7..4817bfb79 100644 --- a/Signal/test/SignalBaseTest.m +++ b/Signal/test/SignalBaseTest.m @@ -40,6 +40,21 @@ NS_ASSUME_NONNULL_BEGIN [super tearDown]; } +- (void)readWithBlock:(void (^)(YapDatabaseReadTransaction *transaction))block +{ + OWSAssert(block); + + [[SSKEnvironment.shared.primaryStorage newDatabaseConnection] readWithBlock:block]; +} + + +- (void)readWriteWithBlock:(void (^)(YapDatabaseReadWriteTransaction *transaction))block +{ + OWSAssert(block); + + [[SSKEnvironment.shared.primaryStorage newDatabaseConnection] readWriteWithBlock:block]; +} + @end NS_ASSUME_NONNULL_END diff --git a/Signal/test/ViewControllers/ConversationViewItemTest.m b/Signal/test/ViewControllers/ConversationViewItemTest.m index f2f7419d3..d7562718c 100644 --- a/Signal/test/ViewControllers/ConversationViewItemTest.m +++ b/Signal/test/ViewControllers/ConversationViewItemTest.m @@ -45,7 +45,7 @@ [TSOutgoingMessage outgoingMessageInThread:self.thread messageBody:self.fakeTextMessageText attachmentId:nil]; [message save]; __block ConversationViewItem *viewItem = nil; - [TSYapDatabaseObject.dbReadConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *transaction) { viewItem = [[ConversationViewItem alloc] initWithInteraction:message isGroupThread:NO transaction:transaction @@ -75,7 +75,7 @@ [message save]; __block ConversationViewItem *viewItem = nil; - [TSYapDatabaseObject.dbReadConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *transaction) { viewItem = [[ConversationViewItem alloc] initWithInteraction:message isGroupThread:NO transaction:transaction diff --git a/Signal/test/contact/OWSContactsManagerTest.m b/Signal/test/contact/OWSContactsManagerTest.m deleted file mode 100644 index cdf3235c1..000000000 --- a/Signal/test/contact/OWSContactsManagerTest.m +++ /dev/null @@ -1,16 +0,0 @@ -// -// Copyright (c) 2018 Open Whisper Systems. All rights reserved. -// - -#import "SignalBaseTest.h" -#import "TestUtil.h" -#import - -@interface OWSContactsManagerTest : SignalBaseTest - -@end - - -@implementation OWSContactsManagerTest - -@end diff --git a/SignalServiceKit/tests/Account/SignedPreKeyDeletionTests.m b/SignalServiceKit/tests/Account/SignedPreKeyDeletionTests.m index be10d257d..48c1af245 100644 --- a/SignalServiceKit/tests/Account/SignedPreKeyDeletionTests.m +++ b/SignalServiceKit/tests/Account/SignedPreKeyDeletionTests.m @@ -9,7 +9,7 @@ @interface TSPreKeyManager (Testing) -+ (void)clearSignedPreKeyRecordsWithKeyId:(NSNumber *)keyId success:(void (^_Nullable)())successHandler; ++ (void)clearSignedPreKeyRecordsWithKeyId:(NSNumber *)keyId success:(void (^_Nullable)(void))successHandler; @end @@ -28,7 +28,7 @@ } - (void)testSignedPreKeyDeletion { - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *transaction) { XCTAssertEqual(0, [transaction numberOfKeysInCollection:OWSPrimaryStorageSignedPreKeyStoreCollection]); }]; @@ -66,7 +66,7 @@ - (void)testSignedPreKeyDeletionKeepsSomeOldKeys { - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *transaction) { XCTAssertEqual(0, [transaction numberOfKeysInCollection:OWSPrimaryStorageSignedPreKeyStoreCollection]); }]; @@ -110,7 +110,7 @@ - (void)testOlderRecordsNotDeletedIfNoReplacement { - [[OWSPrimaryStorage sharedManager].dbReadConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *transaction) { XCTAssertEqual(0, [transaction numberOfKeysInCollection:OWSPrimaryStorageSignedPreKeyStoreCollection]); }]; diff --git a/SignalServiceKit/tests/Contacts/SignalRecipientTest.m b/SignalServiceKit/tests/Contacts/SignalRecipientTest.m index 905a19988..845332b8d 100644 --- a/SignalServiceKit/tests/Contacts/SignalRecipientTest.m +++ b/SignalServiceKit/tests/Contacts/SignalRecipientTest.m @@ -42,24 +42,11 @@ // Sanity Check XCTAssertNotNil(self.localNumber); - [OWSPrimaryStorage.sharedManager.dbReadWriteConnection - readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { - [SignalRecipient markRecipientAsRegisteredAndGet:self.localNumber transaction:transaction]; + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { + [SignalRecipient markRecipientAsRegisteredAndGet:self.localNumber transaction:transaction]; - XCTAssertTrue([SignalRecipient isRegisteredRecipient:self.localNumber transaction:transaction]); - }]; -} - -- (void)testSelfRecipientWithoutExistingRecord -{ - XCTAssertNotNil(self.localNumber); - - [OWSPrimaryStorage.sharedManager.dbReadWriteConnection - readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { - [[SignalRecipient fetchObjectWithUniqueID:self.localNumber] removeWithTransaction:transaction]; - - XCTAssertFalse([SignalRecipient isRegisteredRecipient:self.localNumber transaction:transaction]); - }]; + XCTAssertTrue([SignalRecipient isRegisteredRecipient:self.localNumber transaction:transaction]); + }]; } @end diff --git a/SignalServiceKit/tests/Messages/Interactions/TSOutgoingMessageTest.m b/SignalServiceKit/tests/Messages/Interactions/TSOutgoingMessageTest.m index 30158cfb7..c3ab992d8 100644 --- a/SignalServiceKit/tests/Messages/Interactions/TSOutgoingMessageTest.m +++ b/SignalServiceKit/tests/Messages/Interactions/TSOutgoingMessageTest.m @@ -43,10 +43,9 @@ NS_ASSUME_NONNULL_BEGIN groupMetaMessage:TSGroupMetaMessageUnspecified quotedMessage:nil contactShare:nil]; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection - readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { - XCTAssertFalse([message shouldStartExpireTimerWithTransaction:transaction]); - }]; + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { + XCTAssertFalse([message shouldStartExpireTimerWithTransaction:transaction]); + }]; } - (void)testShouldStartExpireTimerWithSentMessage @@ -62,11 +61,10 @@ NS_ASSUME_NONNULL_BEGIN groupMetaMessage:TSGroupMetaMessageUnspecified quotedMessage:nil contactShare:nil]; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection - readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { - [message updateWithSentRecipient:self.contactId transaction:transaction]; - XCTAssertTrue([message shouldStartExpireTimerWithTransaction:transaction]); - }]; + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { + [message updateWithSentRecipient:self.contactId transaction:transaction]; + XCTAssertTrue([message shouldStartExpireTimerWithTransaction:transaction]); + }]; } - (void)testShouldNotStartExpireTimerWithUnsentMessage @@ -82,10 +80,9 @@ NS_ASSUME_NONNULL_BEGIN groupMetaMessage:TSGroupMetaMessageUnspecified quotedMessage:nil contactShare:nil]; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection - readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { - XCTAssertFalse([message shouldStartExpireTimerWithTransaction:transaction]); - }]; + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { + XCTAssertFalse([message shouldStartExpireTimerWithTransaction:transaction]); + }]; } - (void)testShouldNotStartExpireTimerWithAttemptingOutMessage @@ -101,11 +98,10 @@ NS_ASSUME_NONNULL_BEGIN groupMetaMessage:TSGroupMetaMessageUnspecified quotedMessage:nil contactShare:nil]; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection - readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { - [message updateWithMarkingAllUnsentRecipientsAsSendingWithTransaction:transaction]; - XCTAssertFalse([message shouldStartExpireTimerWithTransaction:transaction]); - }]; + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { + [message updateWithMarkingAllUnsentRecipientsAsSendingWithTransaction:transaction]; + XCTAssertFalse([message shouldStartExpireTimerWithTransaction:transaction]); + }]; } #endif diff --git a/SignalServiceKit/tests/Messages/OWSDisappearingMessageFinderTest.m b/SignalServiceKit/tests/Messages/OWSDisappearingMessageFinderTest.m index 7deeb98d5..15ccce312 100644 --- a/SignalServiceKit/tests/Messages/OWSDisappearingMessageFinderTest.m +++ b/SignalServiceKit/tests/Messages/OWSDisappearingMessageFinderTest.m @@ -26,7 +26,6 @@ NS_ASSUME_NONNULL_BEGIN @interface OWSDisappearingMessageFinderTest : SSKBaseTest -@property (nonatomic, nullable) YapDatabaseConnection *dbConnection; @property (nonatomic, nullable) OWSDisappearingMessagesFinder *finder; @property (nonatomic, nullable) TSThread *thread; @property (nonatomic) uint64_t now; @@ -39,19 +38,10 @@ NS_ASSUME_NONNULL_BEGIN #ifdef BROKEN_TESTS -- (OWSPrimaryStorage *)primaryStorage -{ - OWSAssert(SSKEnvironment.shared.primaryStorage); - - return SSKEnvironment.shared.primaryStorage; -} - - (void)setUp { [super setUp]; - self.dbConnection = self.primaryStorage.newDatabaseConnection; - // TODO: This shouldn't be necessary. // [OWSDisappearingMessagesFinder blockingRegisterDatabaseExtensions:self.primaryStorage]; @@ -114,7 +104,7 @@ NS_ASSUME_NONNULL_BEGIN [unExpiringMessage2 save]; __block NSArray *actualMessages; - [self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *transaction) { actualMessages = [self.finder fetchExpiredMessagesWithTransaction:transaction]; }]; @@ -143,7 +133,7 @@ NS_ASSUME_NONNULL_BEGIN [unExpiringMessage2 save]; __block NSArray *actualMessages; - [self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *transaction) { actualMessages = [self.finder fetchUnstartedExpiringMessagesInThread:self.thread transaction:transaction]; }]; @@ -156,7 +146,7 @@ NS_ASSUME_NONNULL_BEGIN { __block NSNumber *nextExpirationTimestamp; - [self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *transaction) { XCTAssertNotNil(self.finder); nextExpirationTimestamp = [self.finder nextExpirationTimestampWithTransaction:transaction]; }]; diff --git a/SignalServiceKit/tests/Messages/OWSDisappearingMessagesJobTest.m b/SignalServiceKit/tests/Messages/OWSDisappearingMessagesJobTest.m index 541e3bb2c..8c81b4cd0 100644 --- a/SignalServiceKit/tests/Messages/OWSDisappearingMessagesJobTest.m +++ b/SignalServiceKit/tests/Messages/OWSDisappearingMessagesJobTest.m @@ -96,7 +96,7 @@ NS_ASSUME_NONNULL_BEGIN TSMessage *expiringMessage = [self messageWithBody:@"notYetExpiredMessage" expiresInSeconds:20 expireStartedAt:0]; [expiringMessage save]; - [SSKEnvironment.shared.primaryStorage.dbReadWriteConnection + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { [job becomeConsistentWithConfigurationForMessage:expiringMessage contactsManager:[OWSFakeContactsManager new] @@ -119,7 +119,7 @@ NS_ASSUME_NONNULL_BEGIN TSMessage *unExpiringMessage = [self messageWithBody:@"unexpiringMessage" expiresInSeconds:0 expireStartedAt:0]; [unExpiringMessage save]; - [SSKEnvironment.shared.primaryStorage.dbReadWriteConnection + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { [job becomeConsistentWithConfigurationForMessage:unExpiringMessage contactsManager:[OWSFakeContactsManager new] diff --git a/SignalServiceKit/tests/Messages/OWSIncomingMessageFinderTest.m b/SignalServiceKit/tests/Messages/OWSIncomingMessageFinderTest.m index 9d24e53b1..1999008b3 100644 --- a/SignalServiceKit/tests/Messages/OWSIncomingMessageFinderTest.m +++ b/SignalServiceKit/tests/Messages/OWSIncomingMessageFinderTest.m @@ -22,7 +22,6 @@ NS_ASSUME_NONNULL_BEGIN @property (nonatomic) NSString *sourceId; @property (nonatomic) TSThread *thread; @property (nonatomic) OWSIncomingMessageFinder *finder; -@property (nonatomic) YapDatabaseConnection *dbConnection; @end @@ -34,7 +33,6 @@ NS_ASSUME_NONNULL_BEGIN self.sourceId = @"+19999999999"; self.thread = [TSContactThread getOrCreateThreadWithContactId:self.sourceId]; self.finder = [OWSIncomingMessageFinder new]; - self.dbConnection = [OWSPrimaryStorage sharedManager].dbReadConnection; } - (void)tearDown @@ -66,7 +64,7 @@ NS_ASSUME_NONNULL_BEGIN uint64_t timestamp = 1234; __block BOOL result; - [self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { result = [self.finder existsMessageWithTimestamp:timestamp sourceId:self.sourceId sourceDeviceId:OWSDevicePrimaryDeviceId @@ -82,7 +80,7 @@ NS_ASSUME_NONNULL_BEGIN authorId:self.sourceId sourceDeviceId:OWSDevicePrimaryDeviceId]; - [self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { result = [self.finder existsMessageWithTimestamp:timestamp sourceId:self.sourceId sourceDeviceId:OWSDevicePrimaryDeviceId @@ -96,7 +94,7 @@ NS_ASSUME_NONNULL_BEGIN authorId:@"some-other-author-id" sourceDeviceId:OWSDevicePrimaryDeviceId]; - [self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { result = [self.finder existsMessageWithTimestamp:timestamp sourceId:self.sourceId sourceDeviceId:OWSDevicePrimaryDeviceId @@ -109,7 +107,7 @@ NS_ASSUME_NONNULL_BEGIN authorId:self.sourceId sourceDeviceId:OWSDevicePrimaryDeviceId + 1]; - [self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { result = [self.finder existsMessageWithTimestamp:timestamp sourceId:self.sourceId sourceDeviceId:OWSDevicePrimaryDeviceId @@ -120,7 +118,7 @@ NS_ASSUME_NONNULL_BEGIN // The real deal... [self createIncomingMessageWithTimestamp:timestamp authorId:self.sourceId sourceDeviceId:OWSDevicePrimaryDeviceId]; - [self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { + [self readWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) { result = [self.finder existsMessageWithTimestamp:timestamp sourceId:self.sourceId sourceDeviceId:OWSDevicePrimaryDeviceId diff --git a/SignalServiceKit/tests/SSKBaseTest.h b/SignalServiceKit/tests/SSKBaseTest.h index a642fc6be..c2e2d639d 100644 --- a/SignalServiceKit/tests/SSKBaseTest.h +++ b/SignalServiceKit/tests/SSKBaseTest.h @@ -4,6 +4,7 @@ #import "MockSSKEnvironment.h" #import +#import NS_ASSUME_NONNULL_BEGIN @@ -11,6 +12,10 @@ NS_ASSUME_NONNULL_BEGIN @interface SSKBaseTest : XCTestCase +- (void)readWithBlock:(void (^)(YapDatabaseReadTransaction *transaction))block; + +- (void)readWriteWithBlock:(void (^)(YapDatabaseReadWriteTransaction *transaction))block; + @end #endif diff --git a/SignalServiceKit/tests/SSKBaseTest.m b/SignalServiceKit/tests/SSKBaseTest.m index 1d4bcb84e..b8bd3e941 100644 --- a/SignalServiceKit/tests/SSKBaseTest.m +++ b/SignalServiceKit/tests/SSKBaseTest.m @@ -37,6 +37,21 @@ NS_ASSUME_NONNULL_BEGIN [super tearDown]; } +- (void)readWithBlock:(void (^)(YapDatabaseReadTransaction *transaction))block +{ + OWSAssert(block); + + [[SSKEnvironment.shared.primaryStorage newDatabaseConnection] readWithBlock:block]; +} + + +- (void)readWriteWithBlock:(void (^)(YapDatabaseReadWriteTransaction *transaction))block +{ + OWSAssert(block); + + [[SSKEnvironment.shared.primaryStorage newDatabaseConnection] readWriteWithBlock:block]; +} + @end #endif diff --git a/SignalServiceKit/tests/Storage/TSStorageIdentityKeyStoreTests.m b/SignalServiceKit/tests/Storage/TSStorageIdentityKeyStoreTests.m index e014a46e2..1290aff7b 100644 --- a/SignalServiceKit/tests/Storage/TSStorageIdentityKeyStoreTests.m +++ b/SignalServiceKit/tests/Storage/TSStorageIdentityKeyStoreTests.m @@ -36,7 +36,7 @@ extern NSString *const OWSPrimaryStorageTrustedKeysCollection; NSData *newKey = [Randomness generateRandomBytes:32]; NSString *recipientId = @"test@gmail.com"; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { XCTAssert([[OWSIdentityManager sharedManager] isTrustedIdentityKey:newKey recipientId:recipientId @@ -54,7 +54,7 @@ extern NSString *const OWSPrimaryStorageTrustedKeysCollection; NSData *newKey = [Randomness generateRandomBytes:32]; NSString *recipientId = @"test@gmail.com"; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { [[OWSIdentityManager sharedManager] saveRemoteIdentity:newKey recipientId:recipientId @@ -77,7 +77,7 @@ extern NSString *const OWSPrimaryStorageTrustedKeysCollection; NSData *originalKey = [Randomness generateRandomBytes:32]; NSString *recipientId = @"test@protonmail.com"; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { [[OWSIdentityManager sharedManager] saveRemoteIdentity:originalKey recipientId:recipientId diff --git a/SignalServiceKit/tests/Util/TSMessageStorageTests.m b/SignalServiceKit/tests/Util/TSMessageStorageTests.m index d354a824c..426c9eb68 100644 --- a/SignalServiceKit/tests/Util/TSMessageStorageTests.m +++ b/SignalServiceKit/tests/Util/TSMessageStorageTests.m @@ -27,12 +27,11 @@ { [super setUp]; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection - readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { - self.thread = [TSContactThread getOrCreateThreadWithContactId:@"aStupidId" transaction:transaction]; + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { + self.thread = [TSContactThread getOrCreateThreadWithContactId:@"aStupidId" transaction:transaction]; - [self.thread saveWithTransaction:transaction]; - }]; + [self.thread saveWithTransaction:transaction]; + }]; } - (void)tearDown @@ -62,11 +61,10 @@ quotedMessage:nil contactShare:nil]; - [[OWSPrimaryStorage sharedManager].newDatabaseConnection - readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { - [newMessage saveWithTransaction:transaction]; - messageId = newMessage.uniqueId; - }]; + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { + [newMessage saveWithTransaction:transaction]; + messageId = newMessage.uniqueId; + }]; TSIncomingMessage *fetchedMessage = [TSIncomingMessage fetchObjectWithUniqueID:messageId]; @@ -129,8 +127,7 @@ @"privacy matters; privacy is what allows us to determine who we are and who we want to be."; __block TSGroupThread *thread; - [[OWSPrimaryStorage sharedManager].dbReadWriteConnection readWriteWithBlock:^( - YapDatabaseReadWriteTransaction *transaction) { + [self readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { thread = [TSGroupThread getOrCreateThreadWithGroupModel:[[TSGroupModel alloc] initWithTitle:@"fdsfsd" memberIds:[@[] mutableCopy] image:nil