Files
sf-app-platform/packages/sf_tracking/test/clients/crashlytics_service_test.dart

49 lines
1.6 KiB
Dart

import 'package:flutter/foundation.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:sf_tracking/sf_tracking.dart';
void main() {
group('NoopCrashlyticsService', () {
test('recordError completes without side effects', () async {
const service = NoopCrashlyticsService();
await service.recordError(Exception('x'), StackTrace.current);
});
test('recordFlutterError completes without side effects', () async {
const service = NoopCrashlyticsService();
await service.recordFlutterError(
FlutterErrorDetails(exception: Exception('x')),
);
});
test('log / setUserIdentifier / setCustomKey are no-ops', () async {
const service = NoopCrashlyticsService();
await service.log('hello');
await service.setUserIdentifier('u1');
await service.setCustomKey('k', 'v');
});
});
group('FirebaseCrashlyticsService with enabled=false', () {
test('recordError is a no-op when disabled', () async {
final service = FirebaseCrashlyticsService(enabled: false);
await service.recordError(Exception('x'), StackTrace.current);
});
test('log is a no-op when disabled', () async {
final service = FirebaseCrashlyticsService(enabled: false);
await service.log('hello');
});
test('setUserIdentifier is a no-op when disabled', () async {
final service = FirebaseCrashlyticsService(enabled: false);
await service.setUserIdentifier('u1');
});
test('setCustomKey is a no-op when disabled', () async {
final service = FirebaseCrashlyticsService(enabled: false);
await service.setCustomKey('k', 'v');
});
});
}