以下のようなGoogleテストを作成しました。このテストでは、いくつかの計算値を、CSVファイルに保存されていると予想される値と比較します。
class SampleTest : public ::testing::Test{
public:
void setupFile(const std::string& filename) {
// open csv file here
}
void checkRow(ComputedRowValue val) {
CSVParsedOutput out;
m_csv_f.readAndParseLine(out);
EXPECT_EQ(out.field1, val.field1);
EXPECT_EQ(out.field2, val.field2);
EXPECT_EQ(out.field3, val.field3);
m_csv_line++;
}
protected:
CSVFile m_csv_f; // CSV file with expected results
int m_csv_line = 0;
};
これはいくつかの巨大なファイルサイズで実行され、失敗するとEXPECT_EQはどの値の不一致かを教えてくれます。EXPECT_EQによって出力されたエラーメッセージをオーバーライドして、印刷する方法を教えてm_csv_line
ください。
EXPECT_EQをストリームとして使用できるため、 EXPECT_EQ(out.field1, val.field1) << m_csv_line;
必要な処理を実行できます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加