Files
fanuzu/app/test/clipboard_copy_test.dart

26 lines
964 B
Dart

import 'package:fancake/core/ui/clipboard_copy.dart';
import 'package:flutter/services.dart';
import 'package:flutter_test/flutter_test.dart';
/// 링크 복사 — Android 13+ 는 시스템이 「클립보드에 복사했어요」를 띄우므로 앱 토스트를 생략한다(10/8 r11 3-8).
void main() {
TestWidgetsFlutterBinding.ensureInitialized();
const channel = MethodChannel('kr.co.fanuzu.app/device');
final messenger =
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger;
tearDown(() {
messenger.setMockMethodCallHandler(channel, null);
resetClipboardSdkCache();
});
for (final (sdk, toasts) in [(33, 0), (34, 0), (32, 1), (null, 1)]) {
test('Android API $sdk → 앱 토스트 $toasts 회', () async {
messenger.setMockMethodCallHandler(channel, (_) async => sdk);
var count = 0;
await copyToClipboard('https://fanuzu.app/c/1', () => count++);
expect(count, toasts);
});
}
}