lipengwei
2020-05-27 7cdaa24f3ba637804aca9247ae809c4cc1acc6ed
frameworks/FBSDKCoreKit.framework/Headers/FBSDKTestUsersManager.h
@@ -18,28 +18,24 @@
#import <Foundation/Foundation.h>
#import "FBSDKConstants.h"
NS_ASSUME_NONNULL_BEGIN
@class FBSDKAccessToken;
/*!
 @typedef
 @abstract Callback block for returning an array of FBSDKAccessToken instances (and possibly `NSNull` instances); or an error.
/**
 Callback block for returning an array of FBSDKAccessToken instances (and possibly `NSNull` instances); or an error.
 */
typedef void (^FBSDKTestUsersManagerRetrieveTestAccountTokensHandler)(NSArray *tokens, NSError *error) ;
/*!
 @typedef
 @abstract Callback block for removing a test user.
 */
typedef void (^FBSDKTestUsersManagerRemoveTestAccountHandler)(NSError *error) ;
typedef void (^FBSDKAccessTokensBlock)(NSArray<FBSDKAccessToken *> *tokens, NSError *_Nullable error)
NS_SWIFT_NAME(AccessTokensBlock);
/*!
 @class FBSDKTestUsersManager
 @abstract Provides methods for managing test accounts for testing Facebook integration.
/**
  Provides methods for managing test accounts for testing Facebook integration.
 @discussion Facebook allows developers to create test accounts for testing their applications'
 Facebook allows developers to create test accounts for testing their applications'
 Facebook integration (see https://developers.facebook.com/docs/test_users/). This class
 simplifies use of these accounts for writing tests. It is not designed for use in
 production application code.
@@ -48,55 +44,67 @@
 an app id and app secret. You will typically use this class to write unit or integration tests.
 Make sure you NEVER include your app secret in your production app.
 */
NS_SWIFT_NAME(TestUsersManager)
@interface FBSDKTestUsersManager : NSObject
/*!
 @abstract construct or return the shared instance
- (instancetype)init NS_UNAVAILABLE;
+ (instancetype)new NS_UNAVAILABLE;
/**
  construct or return the shared instance
 @param appID the Facebook app id
 @param appSecret the Facebook app secret
 */
+ (instancetype)sharedInstanceForAppID:(NSString *)appID appSecret:(NSString *)appSecret;
+ (instancetype)sharedInstanceForAppID:(NSString *)appID appSecret:(NSString *)appSecret
NS_SWIFT_NAME(shared(forAppID:appSecret:));
/*!
 @abstract retrieve FBSDKAccessToken instances for test accounts with the specific permissions.
/**
  retrieve FBSDKAccessToken instances for test accounts with the specific permissions.
 @param arraysOfPermissions an array of permissions sets, such as @[ [NSSet setWithObject:@"email"], [NSSet setWithObject:@"user_birthday"]]
 if you needed two test accounts with email and birthday permissions, respectively. You can pass in empty nested sets
 if you need two arbitrary test accounts. For convenience, passing nil is treated as @[ [NSSet set] ]
 for fetching a single test user.
 if you need two arbitrary test accounts.
 @param createIfNotFound if YES, new test accounts are created if no test accounts existed that fit the permissions
 requirement
 @param handler the callback to invoke which will return an array of `FBAccessTokenData` instances or an `NSError`.
 If param `createIfNotFound` is NO, the array may contain `[NSNull null]` instances.
 @discussion If you are requesting test accounts with differing number of permissions, try to order
 If you are requesting test accounts with differing number of permissions, try to order
 `arrayOfPermissionsArrays` so that the most number of permissions come first to minimize creation of new
 test accounts.
 */
- (void)requestTestAccountTokensWithArraysOfPermissions:(NSArray *)arraysOfPermissions
- (void)requestTestAccountTokensWithArraysOfPermissions:(NSArray<NSSet<NSString *> *> *)arraysOfPermissions
                                       createIfNotFound:(BOOL)createIfNotFound
                                      completionHandler:(FBSDKTestUsersManagerRetrieveTestAccountTokensHandler)handler;
                                      completionHandler:(nullable FBSDKAccessTokensBlock)handler
NS_SWIFT_NAME(requestTestAccountTokens(withPermissions:createIfNotFound:completionHandler:));
/*!
 @abstract add a test account with the specified permissions
/**
  add a test account with the specified permissions
 @param permissions the set of permissions, e.g., [NSSet setWithObjects:@"email", @"user_friends"]
 @param handler the callback handler
 */
- (void)addTestAccountWithPermissions:(NSSet *)permissions
                    completionHandler:(FBSDKTestUsersManagerRetrieveTestAccountTokensHandler)handler;
- (void)addTestAccountWithPermissions:(NSSet<NSString *> *)permissions
                    completionHandler:(nullable FBSDKAccessTokensBlock)handler;
/*!
 @abstract remove a test account for the given user id
/**
  remove a test account for the given user id
 @param userId the user id
 @param handler the callback handler
 */
- (void)removeTestAccount:(NSString *)userId completionHandler:(FBSDKTestUsersManagerRemoveTestAccountHandler)handler;
- (void)removeTestAccount:(NSString *)userId
        completionHandler:(nullable FBSDKErrorBlock)handler;
/*!
 @abstract Make two test users friends with each other.
/**
  Make two test users friends with each other.
 @param first the token of the first user
 @param second the token of the second user
 @param callback the callback handler
 */
- (void)makeFriendsWithFirst:(FBSDKAccessToken *)first second:(FBSDKAccessToken *)second callback:(void (^)(NSError *))callback;
- (void)makeFriendsWithFirst:(FBSDKAccessToken *)first
                      second:(FBSDKAccessToken *)second
                    callback:(nullable FBSDKErrorBlock)callback
NS_SWIFT_NAME(makeFriends(first:second:callback:));
@end
NS_ASSUME_NONNULL_END