我有一个将 InputStream 作为参数的方法。该方法从 InputStream 中提取属性并返回“版本”属性。此属性保存应用程序的版本。public String getVersion(InputStream inputStream) throws IOException { Properties properties = new Properties(); properties.load(inputStream); String version = properties.getProperty("version"); return version;}出于测试目的,我想创建一个 Properties 对象,设置一些属性,然后将这些属性加载到 InputStream 中。最后,InputStream 将传递给被测方法。@Testpublic void testGetAppVersion() { InputStream inputStream = null; Properties prop = new Properties(); prop.setProperty("version", "1.0.0.test"); // Load properties into InputStream}我该怎么办?
1 回答
有只小跳蛙
TA贡献1824条经验 获得超8个赞
您可以使用该store方法将属性写入流。
下面是一个使用字节数组流的示例:
Properties prop = new Properties();
prop.put("version", "1.0.0.test");
ByteArrayOutputStream os = new ByteArrayOutputStream();
props.store(os, "comments");
InputStream s = new ByteArrayInputStream(os.toByteArray());
String version = getVersion(s);
但我相信以下方式更简单(来自字符串文件内容的输入流):
InputStream is =
new ByteArrayInputStream("version=1.0.0.test\n".getBytes());
添加回答
举报
0/150
提交
取消