blob: e07a51807cb8adfc29b1a17d904699e9ce6899ae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
package cgeo.geocaching.test;
import android.content.res.Resources;
import android.test.InstrumentationTestCase;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Scanner;
public abstract class AbstractResourceInstrumentationTestCase extends InstrumentationTestCase {
protected InputStream getResourceStream(int resourceId) {
final Resources res = getInstrumentation().getContext().getResources();
return res.openRawResource(resourceId);
}
protected String getFileContent(int resourceId) {
final InputStream ins = getResourceStream(resourceId);
final String result = new Scanner(ins).useDelimiter("\\A").next();
try {
ins.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
protected void copyResourceToFile(int resourceId, File file) throws IOException {
final InputStream is = getResourceStream(resourceId);
final FileOutputStream os = new FileOutputStream(file);
try {
final byte[] buffer = new byte[4096];
int byteCount;
while ((byteCount = is.read(buffer)) >= 0) {
os.write(buffer, 0, byteCount);
}
} finally {
os.close();
is.close();
}
}
}
|