summaryrefslogtreecommitdiffstats
path: root/tools/qscxmlc/qscxmlc.cpp
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@theqtcompany.com>2016-04-01 13:58:39 +0200
committerUlf Hermann <ulf.hermann@theqtcompany.com>2016-04-01 15:10:30 +0000
commite22ab608d254c03d58f094e0f25d9e83c2f56be8 (patch)
treec780dae8a195d307252a4d7cae102812497cd93b /tools/qscxmlc/qscxmlc.cpp
parentc84570ecc6c3c4d8a8925345afec7e24c0bbb22d (diff)
Add an (initially empty) test for qscxmlc
Change-Id: I68b78d2a186ea88d9aa5ff243d441b9890693a79 Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Diffstat (limited to 'tools/qscxmlc/qscxmlc.cpp')
-rw-r--r--tools/qscxmlc/qscxmlc.cpp30
1 files changed, 15 insertions, 15 deletions
diff --git a/tools/qscxmlc/qscxmlc.cpp b/tools/qscxmlc/qscxmlc.cpp
index 82eb8df..1bee7cf 100644
--- a/tools/qscxmlc/qscxmlc.cpp
+++ b/tools/qscxmlc/qscxmlc.cpp
@@ -53,13 +53,13 @@ int write(TranslationUnit *tu)
QFile outH(tu->outHFileName);
if (!outH.open(QFile::WriteOnly)) {
errs << QStringLiteral("Error: cannot open '%1': %2").arg(outH.fileName(), outH.errorString()) << endl;
- exit(CannotOpenOutputHeaderFileError);
+ return CannotOpenOutputHeaderFileError;
}
QFile outCpp(tu->outCppFileName);
if (!outCpp.open(QFile::WriteOnly)) {
errs << QStringLiteral("Error: cannot open '%1': %2").arg(outCpp.fileName(), outCpp.errorString()) << endl;
- exit(CannotOpenOutputCppFileError);
+ return CannotOpenOutputCppFileError;
}
QTextStream h(&outH);
@@ -79,17 +79,10 @@ static void collectAllDocuments(DocumentModel::ScxmlDocument *doc, QMap<Document
}
}
-
-int main(int argc, char *argv[])
+int run(QStringList arguments)
{
- QCoreApplication a(argc, argv);
- a.setApplicationVersion(QString::fromLatin1("%1 (Qt %2)").arg(
- QString::number(Q_QSCXMLC_OUTPUT_REVISION),
- QString::fromLatin1(QT_VERSION_STR)));
-
- QTextStream errs(stderr, QIODevice::WriteOnly);
-
QCommandLineParser cmdParser;
+ QTextStream errs(stderr, QIODevice::WriteOnly);
cmdParser.addHelpOption();
cmdParser.addVersionOption();
@@ -131,7 +124,7 @@ int main(int argc, char *argv[])
cmdParser.addOption(optionClassName);
cmdParser.addOption(optionQtMode);
- cmdParser.process(a);
+ cmdParser.process(arguments);
const QStringList inputFiles = cmdParser.positionalArguments();
@@ -182,7 +175,7 @@ int main(int argc, char *argv[])
QFile file(scxmlFileName);
if (!file.open(QFile::ReadOnly)) {
errs << QStringLiteral("Error: cannot open input file %1").arg(scxmlFileName);
- exit(CannotOpenInputFileError);
+ return CannotOpenInputFileError;
}
QXmlStreamReader reader(&file);
@@ -231,7 +224,14 @@ int main(int argc, char *argv[])
tu.classnameForDocument.insert(i.key(), name);
}
- int err = write(&tu);
+ return write(&tu);
+}
- return err;
+int main(int argc, char *argv[])
+{
+ QCoreApplication a(argc, argv);
+ a.setApplicationVersion(QString::fromLatin1("%1 (Qt %2)").arg(
+ QString::number(Q_QSCXMLC_OUTPUT_REVISION),
+ QString::fromLatin1(QT_VERSION_STR)));
+ return run(QCoreApplication::arguments());
}