Files
finlog/finlog_app/fluttery/test/fluttery_test.dart

38 lines
1.2 KiB
Dart

import 'package:fluttery/fluttery.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:fluttery/logger/logger.dart';
import 'package:fluttery/src/logger/logger_impl.dart';
import 'package:kiwi/kiwi.dart';
import 'mocks/mocks.dart';
void main() {
group('App Service Tests', () {
// Clear the singleton state before each test to ensure isolation
setUp(() {
// KiwiContainer provides a clear method to remove all registered services
KiwiContainer().clear();
});
test('should register and resolve a custom service', () {
// Register a mock logger service
final mockLogger = MockLogger();
App.registerService<Logger>(() => mockLogger);
// Resolve the service and check if it's the same instance
final resolvedLogger = App.service<Logger>();
expect(resolvedLogger, isA<MockLogger>());
expect(resolvedLogger, same(mockLogger));
});
test('should register and resolve default services', () {
// Register default services
App.registerDefaultServices();
// Resolve the Logger service and check if it's an instance of LoggerImpl
final logger = App.service<Logger>();
expect(logger, isA<LoggerImpl>());
});
});
}