Skip to content
This repository was archived by the owner on Feb 22, 2023. It is now read-only.

Commit 08023b2

Browse files
committed
Apply PR feedback
1 parent 43eb78e commit 08023b2

File tree

3 files changed

+22
-6
lines changed

3 files changed

+22
-6
lines changed

packages/webview_flutter/webview_flutter_android/android/src/main/java/io/flutter/plugins/webviewflutter/FlutterAssetManagerHostApiImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import android.webkit.WebView;
88
import io.flutter.plugins.webviewflutter.GeneratedAndroidWebView.FlutterAssetManagerHostApi;
99
import java.io.IOException;
10+
import java.util.ArrayList;
1011
import java.util.Arrays;
1112
import java.util.List;
1213

@@ -27,6 +28,11 @@ public FlutterAssetManagerHostApiImpl(FlutterAssetManager flutterAssetManager) {
2728
public List<String> list(String path) {
2829
try {
2930
String[] paths = flutterAssetManager.list(path);
31+
32+
if (paths == null) {
33+
return new ArrayList<>();
34+
}
35+
3036
return Arrays.asList(paths);
3137
} catch (IOException ex) {
3238
throw new RuntimeException(ex.getMessage());

packages/webview_flutter/webview_flutter_android/android/src/test/java/io/flutter/plugins/webviewflutter/FlutterAssetManagerHostApiImplTest.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,14 @@
66

77
import static org.junit.Assert.assertArrayEquals;
88
import static org.junit.Assert.assertEquals;
9+
import static org.junit.Assert.assertNull;
910
import static org.junit.Assert.fail;
1011
import static org.mockito.Mockito.mock;
1112
import static org.mockito.Mockito.verify;
1213
import static org.mockito.Mockito.when;
1314

1415
import java.io.IOException;
16+
import java.util.ArrayList;
1517
import java.util.List;
1618
import org.junit.Before;
1719
import org.junit.Test;
@@ -43,6 +45,19 @@ public void list() {
4345
}
4446
}
4547

48+
@Test
49+
public void list_returns_empty_list_when_no_results() {
50+
try {
51+
when(mockFlutterAssetManager.list("test/path"))
52+
.thenReturn(null);
53+
List<String> actualFilePaths = testFlutterAssetManagerHostApiImpl.list("test/path");
54+
verify(mockFlutterAssetManager).list("test/path");
55+
assertArrayEquals(new String[] {}, actualFilePaths.toArray());
56+
} catch (IOException ex) {
57+
fail();
58+
}
59+
}
60+
4661
@Test(expected = RuntimeException.class)
4762
public void list_should_convert_io_exception_to_runtime_exception() {
4863
try {

packages/webview_flutter/webview_flutter_android/pubspec.yaml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,6 @@ repository: https://github.com/flutter/plugins/tree/master/packages/webview_flut
44
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+webview%22
55
version: 2.5.0
66

7-
# TODO(mvanbeusekom): Remove when webview_flutter_platform_interface no longer referenced through path reference.
8-
publish_to: none
9-
107
environment:
118
sdk: ">=2.14.0 <3.0.0"
129
flutter: ">=2.5.0"
@@ -22,9 +19,7 @@ flutter:
2219
dependencies:
2320
flutter:
2421
sdk: flutter
25-
# TODO(mvanbeusekom): Update to pub.dev dependency once version 1.8.0 is released.
26-
webview_flutter_platform_interface:
27-
path: ../webview_flutter_platform_interface
22+
webview_flutter_platform_interface: ^1.8.0
2823

2924
dev_dependencies:
3025
build_runner: ^2.1.4

0 commit comments

Comments
 (0)