From 35eb05ab8e4b964ebf2e3d4b76fde2bacf2e284a Mon Sep 17 00:00:00 2001 From: Hamed Masafi Date: Wed, 19 Jun 2019 18:02:30 +0430 Subject: [PATCH] auto generate md file for supported data types [skip ci] --- ci-test-init.pri | 2 + test/test.pro | 3 +- test/tst_generators/tst_generators.cpp | 7 +- .../tst_supported_datatypes.cpp | 98 ------------------- .../tst_supported_datatypes.h | 38 ------- .../tst_supported_datatypes.pro | 18 ---- 6 files changed, 9 insertions(+), 157 deletions(-) delete mode 100644 test/tst_supported_datatypes/tst_supported_datatypes.cpp delete mode 100644 test/tst_supported_datatypes/tst_supported_datatypes.h delete mode 100644 test/tst_supported_datatypes/tst_supported_datatypes.pro diff --git a/ci-test-init.pri b/ci-test-init.pri index c3d1f7b..a204047 100644 --- a/ci-test-init.pri +++ b/ci-test-init.pri @@ -1 +1,3 @@ #QT -= gui + +DEFINES += DOC_PATH=\\\"$$PWD/../../doc\\\" diff --git a/test/test.pro b/test/test.pro index 8f182da..6fad6dd 100644 --- a/test/test.pro +++ b/test/test.pro @@ -8,6 +8,5 @@ SUBDIRS += \ tst_quuid \ tst_generators \ tst_upgrades \ - tst_json \ - tst_supported_datatypes + tst_json diff --git a/test/tst_generators/tst_generators.cpp b/test/tst_generators/tst_generators.cpp index 285cd05..140a6e1 100644 --- a/test/tst_generators/tst_generators.cpp +++ b/test/tst_generators/tst_generators.cpp @@ -139,7 +139,12 @@ void GeneratorsTest::cleanupTestCase() .arg(i.key(), i.value().sqlite, i.value().mysql, i.value().psql, i.value().mssql)); } - qDebug() << p.toStdString().c_str(); + + QFile file(DOC_PATH "/datatypes.md"); + if (file.open(QIODevice::WriteOnly)) { + file.write(p.toUtf8()); + file.close(); + } } QTEST_MAIN(GeneratorsTest) diff --git a/test/tst_supported_datatypes/tst_supported_datatypes.cpp b/test/tst_supported_datatypes/tst_supported_datatypes.cpp deleted file mode 100644 index f9222b2..0000000 --- a/test/tst_supported_datatypes/tst_supported_datatypes.cpp +++ /dev/null @@ -1,98 +0,0 @@ -#include -#include -#include -#include -#include - -#include "tst_supported_datatypes.h" - -#include "generators/sqlitegenerator.h" -#include "generators/postgresqlgenerator.h" -#include "generators/mysqlgenerator.h" -#include "generators/sqlservergenerator.h" - -SupportedDataTypesTest::SupportedDataTypesTest(QObject *parent) : QObject(parent) -{ - types - << QMetaType::Bool - << QMetaType::QBitArray - << QMetaType::QByteArray - << QMetaType::QDate - << QMetaType::QDateTime - << QMetaType::QTime - << QMetaType::Double - << QMetaType::Float - - << QMetaType::SChar - << QMetaType::Char - << QMetaType::UChar - << QMetaType::Short - << QMetaType::UShort - << QMetaType::Int - << QMetaType::UInt - << QMetaType::Long - << QMetaType::ULong - << QMetaType::LongLong - << QMetaType::ULongLong - - << QMetaType::QChar - - << QMetaType::QUrl - << QMetaType::QJsonArray - << QMetaType::QJsonValue - << QMetaType::QJsonObject - << QMetaType::QJsonDocument - << QMetaType::QPoint - << QMetaType::QPointF - << QMetaType::QSize - << QMetaType::QSizeF - << QMetaType::QLine - << QMetaType::QLineF - << QMetaType::QRect - << QMetaType::QRectF - << QMetaType::QPolygon - << QMetaType::QPolygonF - << QMetaType::QStringList - << QMetaType::QColor - << QMetaType::QUuid - - << QMetaType::QString; -} - -void SupportedDataTypesTest::initTestCase() -{ - Nut::SqliteGenerator sqlite; - Nut::SqlServerGenerator mssql; - Nut::PostgreSqlGenerator pgsql; - Nut::MySqlGenerator mysql; - - Nut::FieldModel *field = new Nut::FieldModel; - foreach (QMetaType::Type type, types) { - field->type = type; - result.append(Result( - type, - mssql.fieldType(field), - sqlite.fieldType(field), - pgsql.fieldType(field), - mysql.fieldType(field) - )); - } -} - -void SupportedDataTypesTest::cleanupTestCase() -{ - qDebug() << DOC_PATH; - QString md("| Type | Sqlite | MySql | Postgresql| Ms Sql server |\n"); - md.append("|--------|--------|--------|--------|--------|\n"); - foreach (Result r, result) - md.append(QString("| %1 | %2 | %3 | %4 | %5 |\n") - .arg(QMetaType::typeName(r.type), r.sqlite, r.mysql, r.pgsql, r.mssql)); - - QFile file(DOC_PATH "/datatypes.md"); - if (file.open(QIODevice::WriteOnly)) { - file.write(md.toUtf8()); - file.close(); - } -} - -QTEST_MAIN(SupportedDataTypesTest) diff --git a/test/tst_supported_datatypes/tst_supported_datatypes.h b/test/tst_supported_datatypes/tst_supported_datatypes.h deleted file mode 100644 index 2ce7f03..0000000 --- a/test/tst_supported_datatypes/tst_supported_datatypes.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef MAINTEST_H -#define MAINTEST_H - -#include -#include - -class SupportedDataTypesTest : public QObject -{ - Q_OBJECT - QList types; - - struct Result - { - QMetaType::Type type; - QString mssql; - QString sqlite; - QString pgsql; - QString mysql; - - Result(QMetaType::Type type, QString mssql, QString sqlite, - QString pgsql, QString mysql) - : type(type), mssql(mssql), sqlite(sqlite), pgsql(pgsql), mysql(mysql) - {} - }; - QList result; - -public: - explicit SupportedDataTypesTest(QObject *parent = nullptr); - -signals: - -private slots: - void initTestCase(); - - void cleanupTestCase(); -}; - -#endif // MAINTEST_H diff --git a/test/tst_supported_datatypes/tst_supported_datatypes.pro b/test/tst_supported_datatypes/tst_supported_datatypes.pro deleted file mode 100644 index eb8b996..0000000 --- a/test/tst_supported_datatypes/tst_supported_datatypes.pro +++ /dev/null @@ -1,18 +0,0 @@ -QT += testlib sql gui - -TARGET = tst_datatypes -TEMPLATE = app - -CONFIG += warn_on c++11 - -DEFINES += DOC_PATH=\\\"$$PWD/../../doc\\\" - -include(../common/nut-lib.pri) - -SOURCES += \ - tst_supported_datatypes.cpp - -HEADERS += \ - tst_supported_datatypes.h - -include($$PWD/../../ci-test-init.pri)