@@ -7,6 +7,7 @@ import 'dart:io';
7
7
import 'dart:math' as math;
8
8
import 'dart:typed_data' ;
9
9
10
+ import 'package:flutter/foundation.dart' show kIsWeb;
10
11
import 'package:flutter/material.dart' ;
11
12
import 'package:flutter/services.dart' ;
12
13
import 'package:flutter_test/flutter_test.dart' ;
@@ -341,8 +342,21 @@ void main() {
341
342
VideoPlayerController .file (File ('a.avi' ));
342
343
await controller.initialize ();
343
344
344
- expect (fakeVideoPlayerPlatform.dataSources[0 ].uri, 'file://a.avi' );
345
- });
345
+ final String uri = fakeVideoPlayerPlatform.dataSources[0 ].uri! ;
346
+ expect (uri.startsWith ('file:///' ), true , reason: 'Actual string: $uri ' );
347
+ expect (uri.endsWith ('/a.avi' ), true , reason: 'Actual string: $uri ' );
348
+ }, skip: kIsWeb /* Web does not support file assets. */ );
349
+
350
+ test ('file with special characters' , () async {
351
+ final VideoPlayerController controller =
352
+ VideoPlayerController .file (File ('A #1 Hit?.avi' ));
353
+ await controller.initialize ();
354
+
355
+ final String uri = fakeVideoPlayerPlatform.dataSources[0 ].uri! ;
356
+ expect (uri.startsWith ('file:///' ), true , reason: 'Actual string: $uri ' );
357
+ expect (uri.endsWith ('/A%20%231%20Hit%3F.avi' ), true ,
358
+ reason: 'Actual string: $uri ' );
359
+ }, skip: kIsWeb /* Web does not support file assets. */ );
346
360
347
361
test ('successful initialize on controller with error clears error' ,
348
362
() async {
@@ -1009,16 +1023,16 @@ void main() {
1009
1023
});
1010
1024
1011
1025
test ('setMixWithOthers' , () async {
1012
- final VideoPlayerController controller = VideoPlayerController .file (
1013
- File ( '' ) ,
1026
+ final VideoPlayerController controller = VideoPlayerController .network (
1027
+ 'https://127.0.0.1' ,
1014
1028
videoPlayerOptions: VideoPlayerOptions (mixWithOthers: true ));
1015
1029
await controller.initialize ();
1016
1030
expect (controller.videoPlayerOptions! .mixWithOthers, true );
1017
1031
});
1018
1032
1019
1033
test ('true allowBackgroundPlayback continues playback' , () async {
1020
- final VideoPlayerController controller = VideoPlayerController .file (
1021
- File ( '' ) ,
1034
+ final VideoPlayerController controller = VideoPlayerController .network (
1035
+ 'https://127.0.0.1' ,
1022
1036
videoPlayerOptions: VideoPlayerOptions (
1023
1037
allowBackgroundPlayback: true ,
1024
1038
),
@@ -1032,8 +1046,8 @@ void main() {
1032
1046
});
1033
1047
1034
1048
test ('false allowBackgroundPlayback pauses playback' , () async {
1035
- final VideoPlayerController controller = VideoPlayerController .file (
1036
- File ( '' ) ,
1049
+ final VideoPlayerController controller = VideoPlayerController .network (
1050
+ 'https://127.0.0.1' ,
1037
1051
videoPlayerOptions: VideoPlayerOptions (),
1038
1052
);
1039
1053
await controller.initialize ();
0 commit comments