2つのCSVストリーム(InputとOutputの1つ)があり、その内容が同一であることを確認するためにヘッダと空白を無視して比較する必要があります。 これを行うライブラリがありますか?Junit - 2つのCSVストリームが同一であることを比較する
私は現在、このやっている:
HashSet<String> f1 = new HashSet<String>(IOUtils.readLines(new ByteArrayInputStream(((ByteArrayOutputStream)outputStream).toByteArray())));
HashSet<String> f2 = new HashSet<String>(IOUtils.readLines(expectedStream));
f1.removeAll(f2); // f1 now contains only the lines which are not in f2
Assert.assertTrue(f1.isEmpty());
をしかし、それは順序を考慮していないとして、それは明らかに最善ではありません。あなたが変更することができます
私は、あなたが求めているものは正確にはわかりません。「もっと完全な」[mcve]を与えることができますか?outputStreamとexpectedStreamがどのように来るかの例を考えていますか?このテストの目的は何ですか?プロダクションコードをテストするか、CSVファイルの内容を比較するだけですか? – GhostCat
2つのストリームの内容を比較するだけです。見出しを付けずに空白を考慮しないでください。 – user3727540
更新します。 – GhostCat