videoAttachmentDraft method
Implementation
Future<AttachmentDraft> videoAttachmentDraft({String? filepath}) async {
// ensure attachments exists and permissible to post
final attachmentsFinder =
find.byKey(AttachmentSectionWidget.attachmentsKey);
await attachmentsFinder.should(findsOneWidget);
final attachmentWidget = attachmentsFinder.evaluate().first.widget
as FoundAttachmentSectionWidget;
final attachmentsManager = attachmentWidget.attachmentManager;
final addAttachmentFinder =
find.byKey(AttachmentSectionWidget.addAttachmentBtnKey);
await addAttachmentFinder.should(findsOneWidget);
//
final videoFile = await convertAssetImageToXFile(
filepath ?? 'assets/videos/video.mp4',
);
final context = tester.element(addAttachmentFinder);
final ref = ProviderScope.containerOf(context);
final client = ref.read(alwaysClientProvider);
Uint8List bytes = await videoFile.readAsBytes();
final videoDraft =
client.videoDraft(videoFile.path, 'video/').size(bytes.length);
final attachmentDraft = await attachmentsManager.contentDraft(videoDraft);
return attachmentDraft;
}