TF-3484 Remove GetOIDCIsAvailableInteractor duplicate of CheckOIDCIsAvailableInteractor
Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
@@ -1,19 +0,0 @@
|
||||
import 'package:core/presentation/state/failure.dart';
|
||||
import 'package:core/presentation/state/success.dart';
|
||||
import 'package:model/oidc/response/oidc_response.dart';
|
||||
|
||||
class GetOIDCIsAvailableLoading extends LoadingState {}
|
||||
|
||||
class GetOIDCIsAvailableSuccess extends UIState {
|
||||
final OIDCResponse oidcResponse;
|
||||
|
||||
GetOIDCIsAvailableSuccess(this.oidcResponse);
|
||||
|
||||
@override
|
||||
List<Object> get props => [oidcResponse];
|
||||
}
|
||||
|
||||
class GetOIDCIsAvailableFailure extends FeatureFailure {
|
||||
|
||||
GetOIDCIsAvailableFailure(dynamic exception) : super(exception: exception);
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
import 'package:core/presentation/state/failure.dart';
|
||||
import 'package:core/presentation/state/success.dart';
|
||||
import 'package:dartz/dartz.dart';
|
||||
import 'package:model/oidc/request/oidc_request.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/state/get_oidc_is_available_state.dart';
|
||||
|
||||
class GetOIDCIsAvailableInteractor {
|
||||
final AuthenticationOIDCRepository _oidcRepository;
|
||||
|
||||
GetOIDCIsAvailableInteractor(this._oidcRepository);
|
||||
|
||||
Stream<Either<Failure, Success>> execute(OIDCRequest oidcRequest) async* {
|
||||
try {
|
||||
yield Right<Failure, Success>(GetOIDCIsAvailableLoading());
|
||||
final result = await _oidcRepository.checkOIDCIsAvailable(oidcRequest);
|
||||
yield Right<Failure, Success>(GetOIDCIsAvailableSuccess(result));
|
||||
} catch (e) {
|
||||
yield Left<Failure, Success>(GetOIDCIsAvailableFailure(e));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -21,7 +21,6 @@ import 'package:tmail_ui_user/features/login/domain/usecases/get_all_recent_logi
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_all_recent_login_username_on_mobile_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_authentication_info_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_oidc_configuration_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_oidc_is_available_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_stored_oidc_configuration_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_token_oidc_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/save_login_url_on_mobile_interactor.dart';
|
||||
@@ -42,7 +41,6 @@ class LoginBindings extends BaseBindings {
|
||||
Get.create(() => LoginController(
|
||||
Get.find<AuthenticationInteractor>(),
|
||||
Get.find<CheckOIDCIsAvailableInteractor>(),
|
||||
Get.find<GetOIDCIsAvailableInteractor>(),
|
||||
Get.find<GetOIDCConfigurationInteractor>(),
|
||||
Get.find<GetTokenOIDCInteractor>(),
|
||||
Get.find<AuthenticateOidcOnBrowserInteractor>(),
|
||||
@@ -86,9 +84,6 @@ class LoginBindings extends BaseBindings {
|
||||
Get.lazyPut(() => CheckOIDCIsAvailableInteractor(
|
||||
Get.find<AuthenticationOIDCRepository>(),
|
||||
));
|
||||
Get.lazyPut(() => GetOIDCIsAvailableInteractor(
|
||||
Get.find<AuthenticationOIDCRepository>(),
|
||||
));
|
||||
Get.lazyPut(() => GetOIDCConfigurationInteractor(
|
||||
Get.find<AuthenticationOIDCRepository>(),
|
||||
));
|
||||
|
||||
@@ -36,7 +36,6 @@ import 'package:tmail_ui_user/features/login/domain/state/get_all_recent_login_u
|
||||
import 'package:tmail_ui_user/features/login/domain/state/get_authenticated_account_state.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/state/get_authentication_info_state.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/state/get_oidc_configuration_state.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/state/get_oidc_is_available_state.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/state/get_stored_oidc_configuration_state.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/state/get_token_oidc_state.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/authenticate_oidc_on_browser_interactor.dart';
|
||||
@@ -47,7 +46,6 @@ import 'package:tmail_ui_user/features/login/domain/usecases/get_all_recent_logi
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_all_recent_login_username_on_mobile_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_authentication_info_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_oidc_configuration_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_oidc_is_available_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_stored_oidc_configuration_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_token_oidc_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/save_login_url_on_mobile_interactor.dart';
|
||||
@@ -70,7 +68,6 @@ class LoginController extends ReloadableController {
|
||||
|
||||
final AuthenticationInteractor _authenticationInteractor;
|
||||
final CheckOIDCIsAvailableInteractor _checkOIDCIsAvailableInteractor;
|
||||
final GetOIDCIsAvailableInteractor _getOIDCIsAvailableInteractor;
|
||||
final GetOIDCConfigurationInteractor _getOIDCConfigurationInteractor;
|
||||
final GetTokenOIDCInteractor _getTokenOIDCInteractor;
|
||||
final AuthenticateOidcOnBrowserInteractor _authenticateOidcOnBrowserInteractor;
|
||||
@@ -92,7 +89,6 @@ class LoginController extends ReloadableController {
|
||||
|
||||
final loginFormType = LoginFormType.none.obs;
|
||||
|
||||
OIDCResponse? _oidcResponse;
|
||||
UserName? _username;
|
||||
Password? _password;
|
||||
Uri? _baseUri;
|
||||
@@ -103,7 +99,6 @@ class LoginController extends ReloadableController {
|
||||
LoginController(
|
||||
this._authenticationInteractor,
|
||||
this._checkOIDCIsAvailableInteractor,
|
||||
this._getOIDCIsAvailableInteractor,
|
||||
this._getOIDCConfigurationInteractor,
|
||||
this._getTokenOIDCInteractor,
|
||||
this._authenticateOidcOnBrowserInteractor,
|
||||
@@ -153,7 +148,6 @@ class LoginController extends ReloadableController {
|
||||
} else if (failure is CheckOIDCIsAvailableFailure) {
|
||||
_handleCheckOIDCIsAvailableFailure(failure);
|
||||
} else if (failure is GetStoredOidcConfigurationFailure ||
|
||||
failure is GetOIDCIsAvailableFailure ||
|
||||
failure is GetOIDCConfigurationFailure ||
|
||||
failure is SignInTwakeWorkplaceFailure
|
||||
) {
|
||||
@@ -182,10 +176,7 @@ class LoginController extends ReloadableController {
|
||||
} else if (success is GetStoredOidcConfigurationSuccess) {
|
||||
_getTokenOIDCAction(success.oidcConfiguration);
|
||||
} else if (success is CheckOIDCIsAvailableSuccess) {
|
||||
_redirectToSSOLoginScreen(success);
|
||||
} else if (success is GetOIDCIsAvailableSuccess) {
|
||||
_oidcResponse = success.oidcResponse;
|
||||
_getOIDCConfiguration();
|
||||
_getOIDCConfiguration(success.oidcResponse);
|
||||
} else if (success is GetOIDCConfigurationSuccess) {
|
||||
_getOIDCConfigurationSuccess(success);
|
||||
} else if (success is GetTokenOIDCSuccess) {
|
||||
@@ -212,7 +203,6 @@ class LoginController extends ReloadableController {
|
||||
_handleCheckOIDCIsAvailableFailure(failure);
|
||||
} else if (failure is GetStoredOidcConfigurationFailure ||
|
||||
failure is GetOIDCConfigurationFailure ||
|
||||
failure is GetOIDCIsAvailableFailure ||
|
||||
failure is SignInTwakeWorkplaceFailure
|
||||
) {
|
||||
_handleCommonOIDCFailure();
|
||||
@@ -318,16 +308,6 @@ class LoginController extends ReloadableController {
|
||||
}
|
||||
}
|
||||
|
||||
void _redirectToSSOLoginScreen(CheckOIDCIsAvailableSuccess success) {
|
||||
_oidcResponse = success.oidcResponse;
|
||||
consumeState(_getOIDCIsAvailableInteractor.execute(
|
||||
OIDCRequest(
|
||||
baseUrl: _currentBaseUrl!.toString(),
|
||||
resourceUrl: _currentBaseUrl!.origin
|
||||
)
|
||||
));
|
||||
}
|
||||
|
||||
void handleBackButtonAction(BuildContext context) {
|
||||
KeyboardUtils.hideKeyboard(context);
|
||||
clearState();
|
||||
@@ -388,12 +368,8 @@ class LoginController extends ReloadableController {
|
||||
}
|
||||
}
|
||||
|
||||
void _getOIDCConfiguration() {
|
||||
if (_oidcResponse != null) {
|
||||
consumeState(_getOIDCConfigurationInteractor.execute(_oidcResponse!));
|
||||
} else {
|
||||
dispatchState(Left(GetOIDCConfigurationFailure(CanNotFoundOIDCLinks())));
|
||||
}
|
||||
void _getOIDCConfiguration(OIDCResponse oidcResponse) {
|
||||
consumeState(_getOIDCConfigurationInteractor.execute(oidcResponse));
|
||||
}
|
||||
|
||||
void _getOIDCConfigurationSuccess(GetOIDCConfigurationSuccess success) {
|
||||
|
||||
@@ -23,7 +23,6 @@ import 'package:tmail_ui_user/features/login/domain/usecases/get_all_recent_logi
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_authenticated_account_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_authentication_info_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_oidc_configuration_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_oidc_is_available_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_stored_oidc_configuration_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_token_oidc_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/save_login_url_on_mobile_interactor.dart';
|
||||
@@ -53,7 +52,6 @@ import 'login_controller_test.mocks.dart';
|
||||
MockSpec<Uuid>(),
|
||||
MockSpec<AuthenticationInteractor>(),
|
||||
MockSpec<CheckOIDCIsAvailableInteractor>(),
|
||||
MockSpec<GetOIDCIsAvailableInteractor>(),
|
||||
MockSpec<GetOIDCConfigurationInteractor>(),
|
||||
MockSpec<GetTokenOIDCInteractor>(),
|
||||
MockSpec<AuthenticateOidcOnBrowserInteractor>(),
|
||||
@@ -77,7 +75,6 @@ import 'login_controller_test.mocks.dart';
|
||||
void main() {
|
||||
late MockAuthenticationInteractor mockAuthenticationInteractor;
|
||||
late MockCheckOIDCIsAvailableInteractor mockCheckOIDCIsAvailableInteractor;
|
||||
late MockGetOIDCIsAvailableInteractor mockGetOIDCIsAvailableInteractor;
|
||||
late MockGetOIDCConfigurationInteractor mockGetOIDCConfigurationInteractor;
|
||||
late MockGetTokenOIDCInteractor mockGetTokenOIDCInteractor;
|
||||
late MockAuthenticateOidcOnBrowserInteractor mockAuthenticateOidcOnBrowserInteractor;
|
||||
@@ -113,7 +110,6 @@ void main() {
|
||||
setUp(() {
|
||||
mockAuthenticationInteractor = MockAuthenticationInteractor();
|
||||
mockCheckOIDCIsAvailableInteractor = MockCheckOIDCIsAvailableInteractor();
|
||||
mockGetOIDCIsAvailableInteractor = MockGetOIDCIsAvailableInteractor();
|
||||
mockGetOIDCConfigurationInteractor = MockGetOIDCConfigurationInteractor();
|
||||
mockGetTokenOIDCInteractor = MockGetTokenOIDCInteractor();
|
||||
mockAuthenticateOidcOnBrowserInteractor = MockAuthenticateOidcOnBrowserInteractor();
|
||||
@@ -173,7 +169,6 @@ void main() {
|
||||
loginController = LoginController(
|
||||
mockAuthenticationInteractor,
|
||||
mockCheckOIDCIsAvailableInteractor,
|
||||
mockGetOIDCIsAvailableInteractor,
|
||||
mockGetOIDCConfigurationInteractor,
|
||||
mockGetTokenOIDCInteractor,
|
||||
mockAuthenticateOidcOnBrowserInteractor,
|
||||
|
||||
Reference in New Issue
Block a user