テストが必要なメソッドのシグネチャを変更できません。テストコードは以下のようになります
Parser test = new Parser(props);
ArrayList<HDocument> list = new ArrayList<HDocument>();
test.parse("/users/mac/test.xml", list);
System.out.println("Size of list: "+list.size());
assertEquals(5, list.size());
parse
メソッドのシグネチャは次のとおりです
public void parse(String filename, Collection<HDocument> docs)
解析メソッドは正常に実行されますが、テスターを実行すると、リスト サイズが常に 0 になります。解析メソッドのシグネチャを変更できません。どうすればいいですか?
これがパーサークラスです。
class Parser{
private Collection<HDocument> docs;
public void parse(String filename, Collection<HDocument> docs) {
docs = new ArrayList<HDocument>();
Collection<HDocument> docsFromXml = new ArrayList<HDocument>();
Handler hl = new Handler();
try {
docsFromXml = hl.getDocs(filename);
} catch (Exception e) {
e.printStackTrace();
}
docs = docsFromXml;
System.out.println("Size:"
+ docs.size()); // This prints the size correctly
}
}
}