minor fix

This commit is contained in:
Salvatore Giordano
2021-07-08 10:14:37 +02:00
parent 1dc23583a6
commit 2970763782
2 changed files with 22 additions and 22 deletions
+17 -17
View File
@@ -220,52 +220,52 @@ class StreamChatClient {
/// Connects the current user, this triggers a connection to the API. /// Connects the current user, this triggers a connection to the API.
/// It returns a [Future] that resolves when the connection is setup. /// It returns a [Future] that resolves when the connection is setup.
/// Pass [connectWebsocket]: false, if you want to connect to websocket /// Pass [connectWebSocket]: false, if you want to connect to websocket
/// at a later stage or use the client in connection-less mode /// at a later stage or use the client in connection-less mode
Future<OwnUser?> connectUser( Future<OwnUser> connectUser(
User user, User user,
String token, { String token, {
bool connectWebsocket = true, bool connectWebSocket = true,
}) => }) =>
_connectUser( _connectUser(
user, user,
token: Token.fromRawValue(token), token: Token.fromRawValue(token),
connectWebsocket: connectWebsocket, connectWebSocket: connectWebSocket,
); );
/// Connects the current user using the [tokenProvider] to fetch the token. /// Connects the current user using the [tokenProvider] to fetch the token.
/// It returns a [Future] that resolves when the connection is setup. /// It returns a [Future] that resolves when the connection is setup.
Future<OwnUser?> connectUserWithProvider( Future<OwnUser> connectUserWithProvider(
User user, User user,
TokenProvider tokenProvider, { TokenProvider tokenProvider, {
bool connectWebsocket = true, bool connectWebSocket = true,
}) => }) =>
_connectUser( _connectUser(
user, user,
provider: tokenProvider, provider: tokenProvider,
connectWebsocket: connectWebsocket, connectWebSocket: connectWebSocket,
); );
/// Connects the current user with an anonymous id, this triggers a connection /// Connects the current user with an anonymous id, this triggers a connection
/// to the API. It returns a [Future] that resolves when the connection is /// to the API. It returns a [Future] that resolves when the connection is
/// setup. /// setup.
Future<OwnUser?> connectAnonymousUser({ Future<OwnUser> connectAnonymousUser({
bool connectWebsocket = true, bool connectWebSocket = true,
}) async { }) async {
final token = Token.anonymous(); final token = Token.anonymous();
final user = OwnUser(id: token.userId); final user = OwnUser(id: token.userId);
return _connectUser( return _connectUser(
user, user,
token: token, token: token,
connectWebsocket: connectWebsocket, connectWebSocket: connectWebSocket,
); );
} }
/// Connects the current user as guest, this triggers a connection to the API. /// Connects the current user as guest, this triggers a connection to the API.
/// It returns a [Future] that resolves when the connection is setup. /// It returns a [Future] that resolves when the connection is setup.
Future<OwnUser?> connectGuestUser( Future<OwnUser> connectGuestUser(
User user, { User user, {
bool connectWebsocket = true, bool connectWebSocket = true,
}) async { }) async {
final userId = user.id; final userId = user.id;
final anonymousToken = Token.anonymous(userId: userId); final anonymousToken = Token.anonymous(userId: userId);
@@ -282,15 +282,15 @@ class StreamChatClient {
return _connectUser( return _connectUser(
guestUser.user, guestUser.user,
token: guestUserToken, token: guestUserToken,
connectWebsocket: connectWebsocket, connectWebSocket: connectWebSocket,
); );
} }
Future<OwnUser?> _connectUser( Future<OwnUser> _connectUser(
User user, { User user, {
Token? token, Token? token,
TokenProvider? provider, TokenProvider? provider,
bool connectWebsocket = true, bool connectWebSocket = true,
}) async { }) async {
if (_ws.connectionCompleter?.isCompleted == false) { if (_ws.connectionCompleter?.isCompleted == false) {
throw const StreamChatError( throw const StreamChatError(
@@ -310,7 +310,7 @@ class StreamChatClient {
final ownUser = OwnUser.fromUser(user); final ownUser = OwnUser.fromUser(user);
state.user = ownUser; state.user = ownUser;
if (!connectWebsocket) { if (!connectWebSocket) {
return ownUser; return ownUser;
} }
@@ -363,7 +363,7 @@ class StreamChatClient {
try { try {
final event = await _ws.connect(user); final event = await _ws.connect(user);
return event.me!.merge(user); return event.me?.merge(user) ?? user;
} catch (e, stk) { } catch (e, stk) {
logger.severe('error connecting ws', e, stk); logger.severe('error connecting ws', e, stk);
rethrow; rethrow;
@@ -321,7 +321,7 @@ void main() {
); );
}); });
group('Connect user calls with `connectWebsocket`: false', () { group('Connect user calls with `connectWebSocket`: false', () {
const apiKey = 'test-api-key'; const apiKey = 'test-api-key';
late final api = FakeChatApi(); late final api = FakeChatApi();
@@ -347,7 +347,7 @@ void main() {
final res = await client.connectUser( final res = await client.connectUser(
user, user,
token, token,
connectWebsocket: false, connectWebSocket: false,
); );
expect(res, isSameUserAs(user)); expect(res, isSameUserAs(user));
expect(client.wsConnectionStatus, ConnectionStatus.disconnected); expect(client.wsConnectionStatus, ConnectionStatus.disconnected);
@@ -365,7 +365,7 @@ void main() {
final res = await client.connectUserWithProvider( final res = await client.connectUserWithProvider(
user, user,
tokenProvider, tokenProvider,
connectWebsocket: false, connectWebSocket: false,
); );
expect(res, isSameUserAs(user)); expect(res, isSameUserAs(user));
expect(client.wsConnectionStatus, ConnectionStatus.disconnected); expect(client.wsConnectionStatus, ConnectionStatus.disconnected);
@@ -385,7 +385,7 @@ void main() {
final res = await client.connectGuestUser( final res = await client.connectGuestUser(
user, user,
connectWebsocket: false, connectWebSocket: false,
); );
expect(res, isSameUserAs(user)); expect(res, isSameUserAs(user));
@@ -399,7 +399,7 @@ void main() {
'`.connectAnonymousUser` should succeed without connecting', '`.connectAnonymousUser` should succeed without connecting',
() async { () async {
final res = await client.connectAnonymousUser( final res = await client.connectAnonymousUser(
connectWebsocket: false, connectWebSocket: false,
); );
expect(res, isNotNull); expect(res, isNotNull);