mirror of
https://github.com/google/nomulus.git
synced 2025-05-20 19:29:35 +02:00
Clean up test "load resources" methods and classes
There is a big mix of different "load Resources" from different libraries depending on where you were and what type of resource you want. Now there is a clear hirarchy: ResourceUtils: for use in actual (non-test) code, reads a file from a context directory TestDataHelper (uses ResourceUtils): for use in tests, reads a file from a context directory + "/testdata". Also caches the resource so calling it multiple times with the same file will not read the file multiple times. Library specific helpers (e.g. ToolsTestData) (uses TestDataHelper): for use in that library's tests only, reads from a specific testdata directory. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=177027533
This commit is contained in:
parent
bbe2584da4
commit
95647528b8
12 changed files with 66 additions and 75 deletions
|
@ -14,31 +14,21 @@
|
|||
|
||||
package google.registry.rde;
|
||||
|
||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||
|
||||
import com.google.common.io.ByteSource;
|
||||
import com.google.common.io.Resources;
|
||||
import java.io.IOException;
|
||||
import java.net.URL;
|
||||
import google.registry.testing.TestDataHelper;
|
||||
|
||||
/** Utility class providing easy access to contents of the {@code testdata/} directory. */
|
||||
public final class RdeTestData {
|
||||
|
||||
/** Returns {@link ByteSource} for file in {@code rde/testdata/} directory. */
|
||||
public static ByteSource get(String filename) {
|
||||
return Resources.asByteSource(getUrl(filename));
|
||||
return TestDataHelper.loadBytes(RdeTestData.class, filename);
|
||||
}
|
||||
|
||||
/**
|
||||
* Loads data from file in {@code rde/testdata/} as a String (assuming file is UTF-8).
|
||||
*
|
||||
* @throws IOException if the file couldn't be loaded from the jar.
|
||||
*/
|
||||
public static String loadUtf8(String filename) throws IOException {
|
||||
return Resources.asCharSource(getUrl(filename), UTF_8).read();
|
||||
}
|
||||
|
||||
private static URL getUrl(String filename) {
|
||||
return Resources.getResource(RdeTestData.class, "testdata/" + filename);
|
||||
public static String loadUtf8(String filename) {
|
||||
return TestDataHelper.loadFile(RdeTestData.class, filename);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue