chore: flutter_markdown (eingestellt) -> flutter_markdown_plus
Gleiche API, gepflegter Nachfolger. Rendertest für die Markdown-Vorschau (test/document_markdown_test.dart). Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
756486d1fe
commit
0ad06e3238
@@ -6,7 +6,7 @@ import 'package:archive/archive.dart';
|
|||||||
import 'package:flutter/gestures.dart';
|
import 'package:flutter/gestures.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:flutter_markdown/flutter_markdown.dart';
|
import 'package:flutter_markdown_plus/flutter_markdown_plus.dart';
|
||||||
import 'package:flutter_svg/flutter_svg.dart';
|
import 'package:flutter_svg/flutter_svg.dart';
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
import 'package:pdfx/pdfx.dart';
|
import 'package:pdfx/pdfx.dart';
|
||||||
|
|||||||
+4
-4
@@ -400,14 +400,14 @@ packages:
|
|||||||
description: flutter
|
description: flutter
|
||||||
source: sdk
|
source: sdk
|
||||||
version: "0.0.0"
|
version: "0.0.0"
|
||||||
flutter_markdown:
|
flutter_markdown_plus:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: flutter_markdown
|
name: flutter_markdown_plus
|
||||||
sha256: "08fb8315236099ff8e90cb87bb2b935e0a724a3af1623000a9cec930468e0f27"
|
sha256: fce641d6c2106cc495de1cd603f97a4f9d615a97a64011928ded380dbdade935
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.7.7+1"
|
version: "1.0.12"
|
||||||
flutter_plugin_android_lifecycle:
|
flutter_plugin_android_lifecycle:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|||||||
+1
-1
@@ -67,7 +67,7 @@ dependencies:
|
|||||||
# Document viewer
|
# Document viewer
|
||||||
pdfx: ^2.7.0
|
pdfx: ^2.7.0
|
||||||
archive: ^4.0.0
|
archive: ^4.0.0
|
||||||
flutter_markdown: ^0.7.7
|
flutter_markdown_plus: ^1.0.3
|
||||||
|
|
||||||
# Clipboard image paste (Windows FFI) & image decoding
|
# Clipboard image paste (Windows FFI) & image decoding
|
||||||
ffi: ^2.1.0
|
ffi: ^2.1.0
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
import 'dart:convert';
|
||||||
|
import 'dart:typed_data';
|
||||||
|
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
|
import 'package:pyramid/core/theme.dart';
|
||||||
|
import 'package:pyramid/features/chat/document_viewer.dart';
|
||||||
|
|
||||||
|
/// Markdown-Vorschau (seit 2026-10-07 mit flutter_markdown_plus statt dem
|
||||||
|
/// eingestellten flutter_markdown): Überschrift, Liste, Code und Link werden
|
||||||
|
/// gezeichnet.
|
||||||
|
void main() {
|
||||||
|
testWidgets('Markdown-Datei wird in der Vorschau dargestellt', (
|
||||||
|
tester,
|
||||||
|
) async {
|
||||||
|
const md = '# Einkaufsliste\n\n'
|
||||||
|
'- **Milch**\n- _Brot_\n\n'
|
||||||
|
'`code` und [ein Link](https://example.org)\n\n'
|
||||||
|
'> Zitat\n';
|
||||||
|
await tester.pumpWidget(
|
||||||
|
PyramidTheme(
|
||||||
|
child: MaterialApp(
|
||||||
|
home: DocumentViewer(
|
||||||
|
filename: 'notizen.md',
|
||||||
|
bytes: Uint8List.fromList(utf8.encode(md)),
|
||||||
|
senderName: 'Test',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
await tester.pumpAndSettle();
|
||||||
|
|
||||||
|
expect(tester.takeException(), isNull);
|
||||||
|
// Auswählbarer Text (SelectableText → EditableText) oder RichText.
|
||||||
|
bool shows(String text) =>
|
||||||
|
find.textContaining(text, findRichText: true).evaluate().isNotEmpty;
|
||||||
|
expect(shows('Einkaufsliste'), isTrue);
|
||||||
|
expect(shows('Milch'), isTrue);
|
||||||
|
expect(shows('ein Link'), isTrue);
|
||||||
|
expect(shows('Zitat'), isTrue);
|
||||||
|
});
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user