mirror of
https://gitlab.com/spaceti-app/integrations/common/server-sdk.git
synced 2026-07-12 10:50:36 +02:00
Added unitest as example where baseclas does not have property of derived class
This commit is contained in:
parent
956f51e3e2
commit
1cf415820f
@ -1,4 +1,4 @@
|
||||
#include "serversdk/databasetable.h"
|
||||
#include "serversdk/databasetable.h"
|
||||
|
||||
#include <QtTest>
|
||||
|
||||
@ -12,6 +12,12 @@ class BookTable : public serversdk::DatabaseTable
|
||||
TABLE_PROPERTY(QString, name, setName, "Test");
|
||||
};
|
||||
|
||||
class BookTableExt : public BookTable
|
||||
{
|
||||
Q_OBJECT
|
||||
TABLE_PROPERTY(QString, author, setAuthor, "Já");
|
||||
};
|
||||
|
||||
|
||||
QString enumjson = R"({"authErrors":255,"flags":["Enabled","NoValidity"],"subjectId":"1438aade-3aa6-4885-8e0f-138dedae727a"})";
|
||||
|
||||
@ -80,6 +86,8 @@ private slots:
|
||||
void json_test();
|
||||
void enum_test();
|
||||
|
||||
void subclass_test();
|
||||
|
||||
};
|
||||
|
||||
DatabaseTableTest::DatabaseTableTest()
|
||||
@ -135,6 +143,17 @@ void DatabaseTableTest::enum_test()
|
||||
|
||||
}
|
||||
|
||||
/** Baseclass must not contain property of derived class ( extended class ) */
|
||||
void DatabaseTableTest::subclass_test()
|
||||
{
|
||||
auto book = std::make_shared<BookTable>();
|
||||
auto bookExt = std::make_shared<BookTableExt>();
|
||||
|
||||
book->fromVariantMap(bookExt->toVariantMap());
|
||||
|
||||
QCOMPARE(book->jsonData(), QByteArray("{\"id\":0,\"name\":\"\",\"uuid\":\"\"}"));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user