_data()
関数のオプションの引数と同様に、関数にオプションの列を含めることは可能ですか - int foo(int a, int b=5)
.
何かのようなもの:
void Test1::testCase1_data()
{
QTest::addColumn<QString>("requiredCol");
QTest::addColumn<QString>("optionalCol");
// This row doesn't have the optionalCol:
QTest::newRow("1") << "23";
// But this row does:
QTest::newRow("2") << "34" << "56";
}
void Test1::testCase1()
{
QFETCH(QString, requiredCol);
if (optionalCol doesn't exist) {
optionalCol = "some defaultValue";
} else {
QFETCH(QString, optionalCol);
}
}
残念ながら、QFETCH
オプションの列が利用できない場合は単にアサートします。利用できない場合は、代わりにデフォルト値を割り当てたいと思います。