aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/cmdlineparser
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2017-10-30 13:30:18 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2017-11-07 17:24:56 +0000
commit4fba77a23a210376308563187b403f3e3b8a3a18 (patch)
treed5d0dae1986c79d5052c37b9aecdaef8254c9da5 /tests/auto/cmdlineparser
parent7dafcf43711fa5c6b13cc7c14860932678de79e4 (diff)
CLI autotest: Give testInvalidCommandLine a _data function
The code is always the same, only the command line changes. This also turns code comments into proper, user-visible test descriptions. Change-Id: I3bef35d8bf8684524c494d487176695340d3adc1 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Diffstat (limited to 'tests/auto/cmdlineparser')
-rw-r--r--tests/auto/cmdlineparser/tst_cmdlineparser.cpp44
1 files changed, 28 insertions, 16 deletions
diff --git a/tests/auto/cmdlineparser/tst_cmdlineparser.cpp b/tests/auto/cmdlineparser/tst_cmdlineparser.cpp
index 9b6fee936..e8a929fd8 100644
--- a/tests/auto/cmdlineparser/tst_cmdlineparser.cpp
+++ b/tests/auto/cmdlineparser/tst_cmdlineparser.cpp
@@ -174,23 +174,35 @@ private slots:
void testInvalidCommandLine()
{
+ QFETCH(QStringList, commandLine);
CommandLineParser parser;
- QVERIFY(!parser.parseCommandLine(QStringList() << m_fileArgs << "-x")); // Unknown short option.
- QVERIFY(!parser.parseCommandLine(QStringList() << m_fileArgs << "--xyz")); // Unknown long option.
- QVERIFY(!parser.parseCommandLine(QStringList() << m_fileArgs << "-vjv")); // Invalid position.
- QVERIFY(!parser.parseCommandLine(QStringList() << m_fileArgs << "-j")); // Missing argument.
- QVERIFY(!parser.parseCommandLine(QStringList() << "-j" << "0" << m_fileArgs)); // Wrong argument.
- QVERIFY(!parser.parseCommandLine(QStringList() << m_fileArgs << "--products")); // Missing argument.
- QVERIFY(!parser.parseCommandLine(QStringList() << "--changed-files" << "," << m_fileArgs)); // Wrong argument.
- QVERIFY(!parser.parseCommandLine(QStringList() << "--log-level" << "blubb" << m_fileArgs)); // Wrong argument.
- QVERIFY(!parser.parseCommandLine(QStringList() << m_fileArgs << "-123")); // Unknown numeric argument.
- QVERIFY(!parser.parseCommandLine(QStringList() << m_fileArgs << "debug")); // Unknown parameter.
- QVERIFY(!parser.parseCommandLine(QStringList("help") << "build" << "clean")); // Too many arguments.
- QVERIFY(!parser.parseCommandLine(QStringList("clean") << "profile:x")); // This command cannot resolve.
- QVERIFY(!parser.parseCommandLine(QStringList("dump-nodes-tree") << "profile:x")); // This command cannot resolve.
- QVERIFY(!parser.parseCommandLine(QStringList("status") << "profile:x")); // This command cannot resolve.
- QVERIFY(!parser.parseCommandLine(QStringList("update-timestamps") << "profile:x")); // This command cannot resolve.
- QVERIFY(!parser.parseCommandLine(QStringList("show-version") << "config:debug")); // This command takes no arguments.
+ QVERIFY(!parser.parseCommandLine(commandLine));
+ }
+
+ void testInvalidCommandLine_data()
+ {
+ QTest::addColumn<QStringList>("commandLine");
+ QTest::addRow("Unknown short option") << (QStringList() << m_fileArgs << "-x");
+ QTest::addRow("Unknown long option") << (QStringList() << m_fileArgs << "--xyz");
+ QTest::addRow("Invalid position") << (QStringList() << m_fileArgs << "-vjv");
+ QTest::addRow("Missing jobs argument") << (QStringList() << m_fileArgs << "-j");
+ QTest::addRow("Missing products argument") << (QStringList() << m_fileArgs << "--products");
+ QTest::addRow("Wrong argument") << (QStringList() << "-j" << "0" << m_fileArgs);
+ QTest::addRow("Invalid list argument")
+ << (QStringList() << "--changed-files" << "," << m_fileArgs);
+ QTest::addRow("Invalid log level")
+ << (QStringList() << "--log-level" << "blubb" << m_fileArgs);
+ QTest::addRow("Unknown numeric argument") << (QStringList() << m_fileArgs << "-123");
+ QTest::addRow("Unknown parameter") << (QStringList() << m_fileArgs << "debug");
+ QTest::addRow("Too many arguments") << (QStringList("help") << "build" << "clean");
+ QTest::addRow("Property assignment for clean") << (QStringList("clean") << "profile:x");
+ QTest::addRow("Property assignment for dump-nodes-tree")
+ << (QStringList("dump-nodes-tree") << "profile:x");
+ QTest::addRow("Property assignment for status") << (QStringList("status") << "profile:x");
+ QTest::addRow("Property assignment for update-timestamps")
+ << (QStringList("update-timestamps") << "profile:x");
+ QTest::addRow("Argument for show-version")
+ << (QStringList("show-version") << "config:debug");
}
private: