1.1 --- a/rt/vm/src/test/java/org/apidesign/vm4brwsr/Resources.java Mon Apr 28 17:31:29 2014 +0200
1.2 +++ b/rt/vm/src/test/java/org/apidesign/vm4brwsr/Resources.java Mon Apr 28 20:23:44 2014 +0200
1.3 @@ -19,6 +19,8 @@
1.4
1.5 import java.io.IOException;
1.6 import java.io.InputStream;
1.7 +import java.net.URL;
1.8 +import java.util.Enumeration;
1.9
1.10 /**
1.11 *
1.12 @@ -27,26 +29,26 @@
1.13 public class Resources {
1.14 public static String loadKO() throws IOException {
1.15 InputStream is = Resources.class.getResourceAsStream("ko.js");
1.16 + return readIS(is, false);
1.17 + }
1.18 +
1.19 + static String loadClazz() throws IOException {
1.20 + InputStream is = Resources.class.getResourceAsStream("Bck2BrwsrToolkit.class");
1.21 + return readIS(is, false);
1.22 + }
1.23 +
1.24 + private static String readIS(InputStream is, boolean asString) throws IOException {
1.25 if (is == null) {
1.26 return "No resource found!";
1.27 }
1.28 byte[] arr = new byte[4092];
1.29 int len = is.read(arr);
1.30 - if (len == -1) {
1.31 - return "No data read!";
1.32 + if (len < 5) {
1.33 + return "No data read! Len: " + len;
1.34 }
1.35 - final Object str = new String(arr, 0, len, "UTF-8");
1.36 - return str.toString();
1.37 - }
1.38 - static String loadClazz() throws IOException {
1.39 - InputStream is = Resources.class.getResourceAsStream("Bck2BrwsrToolkit.class");
1.40 - if (is == null) {
1.41 - return "No resource found!";
1.42 - }
1.43 - byte[] arr = new byte[4092];
1.44 - int len = is.read(arr);
1.45 - if (len < 10) {
1.46 - return "No data read! Len: " + len;
1.47 +
1.48 + if (asString) {
1.49 + return new String(arr, 0, len, "UTF-8").toString().toString();
1.50 }
1.51
1.52 StringBuilder sb = new StringBuilder();
1.53 @@ -57,4 +59,25 @@
1.54
1.55 return sb.toString().toString();
1.56 }
1.57 +
1.58 + static String loadHello() throws IOException {
1.59 + Enumeration<URL> en;
1.60 + try {
1.61 + en = Resources.class.getClassLoader().getResources("META-INF/ahoj");
1.62 + } catch (SecurityException ex) {
1.63 + return "SecurityException";
1.64 + }
1.65 + StringBuilder sb = new StringBuilder();
1.66 + while (en.hasMoreElements()) {
1.67 + URL url = en.nextElement();
1.68 + sb.append(readIS(url.openStream(), true));
1.69 + }
1.70 + return sb.toString().toString();
1.71 + }
1.72 + static String loadJustHello() throws IOException {
1.73 + URL url = Resources.class.getResource("/META-INF/ahoj");
1.74 + StringBuilder sb = new StringBuilder();
1.75 + sb.append(readIS(url.openStream(), true));
1.76 + return sb.toString().toString();
1.77 + }
1.78 }