26 lines
964 B
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);
|
|
});
|
|
}
|
|
}
|