MessagesManager should only be accessible via it's shared singleton

Testers can add the verbose init to a category for injecting
dependencies.

// FREEBIE
pull/1/head
Michael Kirk 9 years ago
parent 718164fbe5
commit 4b0c01c961

@ -1,5 +1,6 @@
// Created by Frederic Jacobs on 11/11/14.
// Copyright (c) 2014 Open Whisper Systems. All rights reserved.
//
// Copyright (c) 2017 Open Whisper Systems. All rights reserved.
//
#import "TSIncomingMessage.h"
#import "TSInvalidIdentityKeySendingErrorMessage.h"
@ -20,14 +21,6 @@ NS_ASSUME_NONNULL_BEGIN
@interface TSMessagesManager : NSObject
- (instancetype)init NS_UNAVAILABLE;
- (instancetype)initWithNetworkManager:(TSNetworkManager *)networkManager
storageManager:(TSStorageManager *)storageManager
callMessageHandler:(id<OWSCallMessageHandler>)callMessageHandler
contactsManager:(id<ContactsManagerProtocol>)contactsManager
contactsUpdater:(ContactsUpdater *)contactsUpdater
messageSender:(OWSMessageSender *)messageSender NS_DESIGNATED_INITIALIZER;
+ (instancetype)sharedManager;
@property (nonatomic, readonly) YapDatabaseConnection *dbConnection;

@ -1,5 +1,6 @@
// Created by Michael Kirk on 9/23/16.
// Copyright © 2016 Open Whisper Systems. All rights reserved.
//
// Copyright (c) 2017 Open Whisper Systems. All rights reserved.
//
#import <XCTest/XCTest.h>
@ -21,6 +22,15 @@ NS_ASSUME_NONNULL_BEGIN
@interface TSMessagesManager (Testing)
// Private init for stubbing dependencies
- (instancetype)initWithNetworkManager:(TSNetworkManager *)networkManager
storageManager:(TSStorageManager *)storageManager
callMessageHandler:(id<OWSCallMessageHandler>)callMessageHandler
contactsManager:(id<ContactsManagerProtocol>)contactsManager
contactsUpdater:(ContactsUpdater *)contactsUpdater
messageSender:(OWSMessageSender *)messageSender;
// private method we are testing
- (void)handleIncomingEnvelope:(OWSSignalServiceProtosEnvelope *)messageEnvelope
withSyncMessage:(OWSSignalServiceProtosSyncMessage *)syncMessage;

Loading…
Cancel
Save