Integrate logging system into Flutter app with service registration and testing setup

This commit is contained in:
2025-09-21 11:03:06 +02:00
parent daaaed47c4
commit 5572c66b10
9 changed files with 273 additions and 12 deletions

View File

@@ -1,12 +1,37 @@
import 'package:flutter_test/flutter_test.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() {
test('adds one to input values', () {
final calculator = Calculator();
expect(calculator.addOne(2), 3);
expect(calculator.addOne(-7), -6);
expect(calculator.addOne(0), 1);
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>());
});
});
}