TF-3260 Fix unit test to build CI success

Signed-off-by: dab246 <tdvu@linagora.com>

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-02-18 17:30:54 +07:00
committed by Dat H. Pham
parent bbb98a2a49
commit 30997a2d7e
10 changed files with 22 additions and 10 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ abstract class BaseScenario {
expect(patrolFinder, findsWidgets); expect(patrolFinder, findsWidgets);
} }
Future<void> expectViewInVisible(PatrolFinder patrolFinder) async { Future<void> expectViewInvisible(PatrolFinder patrolFinder) async {
expect(patrolFinder, findsNothing); expect(patrolFinder, findsNothing);
} }
} }
@@ -84,5 +84,5 @@ class AppGridScenario extends BaseScenario {
} }
} }
Future<void> _expectMailboxViewInVisible() => expectViewInVisible($(MailboxView)); Future<void> _expectMailboxViewInVisible() => expectViewInvisible($(MailboxView));
} }
@@ -3,7 +3,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/domain/app_dashboard/li
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/linagora_ecosystem/linagora_ecosystem.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/domain/linagora_ecosystem/linagora_ecosystem.dart';
abstract class AppGridDatasource { abstract class AppGridDatasource {
Future<LinagoraApplications> getLinagoraApplications(String path); Future<LinagoraApplications> getLinagoraApplicationsFromEnvironment(String path);
Future<LinagoraEcosystem> getLinagoraEcosystem(String baseUrl); Future<LinagoraEcosystem> getLinagoraEcosystem(String baseUrl);
} }
@@ -13,7 +13,7 @@ class AppGridDatasourceImpl extends AppGridDatasource {
AppGridDatasourceImpl(this._linagoraEcosystemApi, this._exceptionThrower); AppGridDatasourceImpl(this._linagoraEcosystemApi, this._exceptionThrower);
@override @override
Future<LinagoraApplications> getLinagoraApplications(String path) { Future<LinagoraApplications> getLinagoraApplicationsFromEnvironment(String path) {
throw UnimplementedError(); throw UnimplementedError();
} }
@@ -14,7 +14,7 @@ class LocalAppGridDatasourceImpl extends AppGridDatasource {
LocalAppGridDatasourceImpl(this._appConfigLoader, this._exceptionThrower); LocalAppGridDatasourceImpl(this._appConfigLoader, this._exceptionThrower);
@override @override
Future<LinagoraApplications> getLinagoraApplications(String path) { Future<LinagoraApplications> getLinagoraApplicationsFromEnvironment(String path) {
return Future.sync(() async { return Future.sync(() async {
return await _appConfigLoader.load<LinagoraApplications>( return await _appConfigLoader.load<LinagoraApplications>(
path, path,
@@ -12,8 +12,8 @@ class AppGridRepositoryImpl extends AppGridRepository {
AppGridRepositoryImpl(this._mapDataSource); AppGridRepositoryImpl(this._mapDataSource);
@override @override
Future<LinagoraApplications> getLinagoraApplications(String path) { Future<LinagoraApplications> getLinagoraApplicationsFromEnvironment(String path) {
return _mapDataSource[DataSourceType.local]!.getLinagoraApplications(path); return _mapDataSource[DataSourceType.local]!.getLinagoraApplicationsFromEnvironment(path);
} }
@override @override
@@ -3,7 +3,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/domain/app_dashboard/li
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/linagora_ecosystem/linagora_ecosystem.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/domain/linagora_ecosystem/linagora_ecosystem.dart';
abstract class AppGridRepository { abstract class AppGridRepository {
Future<LinagoraApplications> getLinagoraApplications(String path); Future<LinagoraApplications> getLinagoraApplicationsFromEnvironment(String path);
Future<LinagoraEcosystem> getLinagoraEcosystem(String baseUrl); Future<LinagoraEcosystem> getLinagoraEcosystem(String baseUrl);
} }
@@ -13,7 +13,7 @@ class GetAppDashboardConfigurationInteractor {
Stream<Either<Failure, Success>> execute(String path) async* { Stream<Either<Failure, Success>> execute(String path) async* {
try { try {
yield Right(LoadingAppDashboardConfiguration()); yield Right(LoadingAppDashboardConfiguration());
final linagoraApps = await _appGridRepository.getLinagoraApplications(path); final linagoraApps = await _appGridRepository.getLinagoraApplicationsFromEnvironment(path);
yield Right(GetAppDashboardConfigurationSuccess(linagoraApps.apps)); yield Right(GetAppDashboardConfigurationSuccess(linagoraApps.apps));
} catch (e) { } catch (e) {
logError('GetAppDashboardConfigurationInteractor::execute(): $e'); logError('GetAppDashboardConfigurationInteractor::execute(): $e');
@@ -52,5 +52,17 @@ void main() {
final result = servicePath.usingBaseUrl(''); final result = servicePath.usingBaseUrl('');
expect(result.path, '/'); expect(result.path, '/');
}); });
test('Should correctly handle baseUrl with port', () {
final servicePath = ServicePath('/api/v1/resource');
final result = servicePath.usingBaseUrl('https://example.com:8080');
expect(result.path, 'https://example.com:8080/api/v1/resource');
});
test('Should correctly handle baseUrl with port and trailing slash', () {
final servicePath = ServicePath('/api/v1/resource');
final result = servicePath.usingBaseUrl('https://example.com:8080/');
expect(result.path, 'https://example.com:8080/api/v1/resource');
});
}); });
} }
@@ -125,7 +125,7 @@ const fallbackGenerators = {
MockSpec<UpdateAccountCacheInteractor>(), MockSpec<UpdateAccountCacheInteractor>(),
MockSpec<EmailReceiveManager>(), MockSpec<EmailReceiveManager>(),
MockSpec<DownloadController>(fallbackGenerators: fallbackGenerators), MockSpec<DownloadController>(fallbackGenerators: fallbackGenerators),
MockSpec<AppGridDashboardController>(), MockSpec<AppGridDashboardController>(fallbackGenerators: fallbackGenerators),
MockSpec<SpamReportController>(fallbackGenerators: fallbackGenerators), MockSpec<SpamReportController>(fallbackGenerators: fallbackGenerators),
MockSpec<NetworkConnectionController>(fallbackGenerators: fallbackGenerators), MockSpec<NetworkConnectionController>(fallbackGenerators: fallbackGenerators),
MockSpec<RemoveEmailDraftsInteractor>(), MockSpec<RemoveEmailDraftsInteractor>(),