-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
127 additions
and
119 deletions.
There are no files selected for viewing
22 changes: 12 additions & 10 deletions
22
test/app/shared/message_handler/message_handler_test.dart
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,19 @@ | ||
//import 'package:altme/app/shared/message_handler/message_handler.dart'; | ||
//import 'package:flutter/material.dart'; | ||
import 'package:altme/app/shared/message_handler/message_handler.dart'; | ||
import 'package:flutter/material.dart'; | ||
import 'package:flutter_test/flutter_test.dart'; | ||
|
||
//import '../../../helpers/helpers.dart'; | ||
import '../../../helpers/helpers.dart'; | ||
|
||
class TestMessageHandler with MessageHandler {} | ||
|
||
void main() { | ||
group('MessageHandler Test', () { | ||
// testWidgets('returns Unknown message', (tester) async { | ||
// final MessageHandler messageHandler = MessageHandler(); | ||
// await tester.pumpApp(Container()); | ||
// final BuildContext context = tester.element(find.byType(Container)); | ||
// final String text = messageHandler.getMessage(context, messageHandler); | ||
// expect(text, 'Unknown message'); | ||
// }); | ||
testWidgets('returns Unknown message', (tester) async { | ||
final TestMessageHandler messageHandler = TestMessageHandler(); | ||
await tester.pumpApp(Container()); | ||
final BuildContext context = tester.element(find.byType(Container)); | ||
final String text = messageHandler.getMessage(context, messageHandler); | ||
expect(text, 'Unknown message'); | ||
}); | ||
}); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,105 +1,110 @@ | ||
// import 'dart:convert'; | ||
|
||
// import 'package:altme/app/app.dart'; | ||
// import 'package:dio/dio.dart'; | ||
// import 'package:flutter_test/flutter_test.dart'; | ||
// import 'package:http_mock_adapter/http_mock_adapter.dart'; | ||
|
||
// import 'test_constants.dart'; | ||
|
||
// void main() { | ||
// group('DioClient Class', () { | ||
// // test('can be instantiated', () { | ||
// // expect(getDioClient(baseUrl: baseUrl), isNotNull); | ||
// // }); | ||
|
||
// group('interceptors', () { | ||
// final dio = Dio(BaseOptions(baseUrl: baseUrl)); | ||
// final dioAdapter = DioAdapter(dio: Dio(BaseOptions(baseUrl: baseUrl))); | ||
// dio.httpClientAdapter = dioAdapter; | ||
// // final interceptor = DioInterceptor(dio: dio); | ||
// //final service = DioClient(baseUrl, dio, interceptors: [interceptor]); | ||
|
||
// // test('set interceptors', () { | ||
// // expect(service.interceptors?.length, greaterThan(0)); | ||
// // }); | ||
// }); | ||
|
||
// group('exceptions', () { | ||
// final dio = Dio(BaseOptions(baseUrl: 'http://no.domain.com')); | ||
// final service = DioClient('http://no.domain.com', dio); | ||
// test('socket exception in get method', () async { | ||
// try { | ||
// await service.get('/path'); | ||
// } catch (e) { | ||
// if (e is NetworkException) { | ||
// expect( | ||
// e.message, | ||
// NetworkError.NETWORK_ERROR_NO_INTERNET_CONNECTION, | ||
// ); | ||
// } | ||
// } | ||
// }); | ||
|
||
// test('socket exception in post method', () async { | ||
// try { | ||
// await service.post('/path'); | ||
// } catch (e) { | ||
// if (e is NetworkException) { | ||
// expect( | ||
// e.message, | ||
// NetworkError.NETWORK_ERROR_NO_INTERNET_CONNECTION, | ||
// ); | ||
// } | ||
// } | ||
// }); | ||
// }); | ||
|
||
// group('Get Method', () { | ||
// final dio = Dio(BaseOptions(baseUrl: baseUrl)); | ||
// final dioAdapter = DioAdapter(dio: Dio(BaseOptions(baseUrl: baseUrl))); | ||
// dio.httpClientAdapter = dioAdapter; | ||
// final service = DioClient(baseUrl, dio); | ||
|
||
// test('Get Method Success test', () async { | ||
// dioAdapter.onGet( | ||
// baseUrl + testPath, | ||
// (request) { | ||
// return request.reply(200, successMessage); | ||
// }, | ||
// ); | ||
|
||
// final dynamic response = await service.get(baseUrl + testPath); | ||
|
||
// expect(response, successMessage); | ||
// }); | ||
// }); | ||
|
||
// group('Post Method', () { | ||
// final dio = Dio(BaseOptions(baseUrl: baseUrl)); | ||
// final dioAdapter = DioAdapter(dio: Dio(BaseOptions(baseUrl: baseUrl))); | ||
// dio.httpClientAdapter = dioAdapter; | ||
// final service = DioClient(baseUrl, dio); | ||
|
||
// test('Post Method Success test', () async { | ||
// dioAdapter.onPost( | ||
// baseUrl + testPath, | ||
// (request) { | ||
// return request.reply(201, successMessage); | ||
// }, | ||
// data: json.encode(testData), | ||
// queryParameters: <String, dynamic>{}, | ||
// headers: header, | ||
// ); | ||
|
||
// final dynamic response = await service.post( | ||
// baseUrl + testPath, | ||
// data: json.encode(testData), | ||
// options: Options(headers: header), | ||
// ); | ||
|
||
// expect(response, successMessage); | ||
// }); | ||
// }); | ||
// }); | ||
// } | ||
import 'package:altme/app/app.dart'; | ||
import 'package:dio/dio.dart'; | ||
import 'package:flutter_test/flutter_test.dart'; | ||
import 'package:http_mock_adapter/http_mock_adapter.dart'; | ||
import 'package:mocktail/mocktail.dart'; | ||
import 'package:secure_storage/secure_storage.dart'; | ||
|
||
import 'test_constants.dart'; | ||
|
||
class MockSecureStorageProvider extends Mock implements SecureStorageProvider {} | ||
|
||
class MockDio extends Mock implements Dio {} | ||
|
||
void main() { | ||
late MockSecureStorageProvider mockSecureStorageProvider; | ||
late DioClient service; | ||
late DioAdapter dioAdapter; | ||
|
||
const baseUrl = 'https://example.com'; | ||
|
||
final dio = Dio(BaseOptions(baseUrl: baseUrl)); | ||
|
||
setUp(() { | ||
dioAdapter = DioAdapter(dio: dio, matcher: const UrlRequestMatcher()); | ||
dio.httpClientAdapter = dioAdapter; | ||
mockSecureStorageProvider = MockSecureStorageProvider(); | ||
service = DioClient( | ||
baseUrl: baseUrl, | ||
secureStorageProvider: mockSecureStorageProvider, | ||
dio: dio, | ||
); | ||
}); | ||
|
||
group('DioClient Class', () { | ||
test('can be instantiated', () { | ||
expect(service, isNotNull); | ||
}); | ||
|
||
test('set interceptors', () { | ||
expect(service.dio.interceptors.length, greaterThan(0)); | ||
}); | ||
|
||
group('exceptions', () { | ||
test('socket exception in get method', () async { | ||
try { | ||
await service.get('/path'); | ||
} catch (e) { | ||
if (e is NetworkException) { | ||
expect( | ||
e.message, | ||
NetworkError.NETWORK_ERROR_NO_INTERNET_CONNECTION, | ||
); | ||
} | ||
} | ||
}); | ||
|
||
test('socket exception in post method', () async { | ||
try { | ||
await service.post('/path'); | ||
} catch (e) { | ||
if (e is NetworkException) { | ||
expect( | ||
e.message, | ||
NetworkError.NETWORK_ERROR_NO_INTERNET_CONNECTION, | ||
); | ||
} | ||
} | ||
}); | ||
}); | ||
|
||
group('Get Method', () { | ||
// test('Get Method Success test', () async { | ||
// dioAdapter.onGet( | ||
// baseUrl + testPath, | ||
// (request) { | ||
// return request.reply(200, successMessage); | ||
// }, | ||
// ); | ||
|
||
// final dynamic response = await service.get(baseUrl + testPath); | ||
|
||
// expect(response, successMessage); | ||
// }); | ||
}); | ||
|
||
group('Post Method', () { | ||
// final service = DioClient(baseUrl, dio); | ||
|
||
// test('Post Method Success test', () async { | ||
// dioAdapter.onPost( | ||
// baseUrl + testPath, | ||
// (request) { | ||
// return request.reply(201, successMessage); | ||
// }, | ||
// data: json.encode(testData), | ||
// queryParameters: <String, dynamic>{}, | ||
// headers: header, | ||
// ); | ||
|
||
// final dynamic response = await service.post( | ||
// baseUrl + testPath, | ||
// data: json.encode(testData), | ||
// options: Options(headers: header), | ||
// ); | ||
|
||
// expect(response, successMessage); | ||
// }); | ||
}); | ||
}); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters