commit 6d3b13bc614a6ab900da03196265768c8a8eb5e3
Author: Christian Ehringfeld <c.ehringfeld@t-online.de>
Date:   Sun Apr 16 21:08:10 2017 +0200

    fix?!

diff --git a/src/entityinstancefactory.cpp b/src/entityinstancefactory.cpp
index 2c511fb..7c54865 100644
--- a/src/entityinstancefactory.cpp
+++ b/src/entityinstancefactory.cpp
@@ -91,6 +91,8 @@ void EntityInstanceFactory::setAttributes(Entity *&e,
                     qWarning() << prop.name() << "on Entity" << EntityHelper::getClassname(
                                    e) << "not writeable!";
                 }
+            } else {
+                e->setProperty(iterator.key().toLatin1().data(), iterator.value());
             }
             ++iterator;
         }
@@ -145,11 +147,10 @@ QSharedPointer<Entity> EntityInstanceFactory::castQVariant(
     QVariant &entity) {
     auto e = entity.value<QSharedPointer<Entity>>();
     if(!e) {
-        auto ne = *reinterpret_cast<QSharedPointer<Entity>*>(entity.data());
-        if(ne && ne->getClassname() != "Entity") {
-            e = ne;
-        } else {
-            e = QSharedPointer<Entity>();
+        auto ne = *static_cast<QSharedPointer<QObject>*>(entity.data());
+        auto entityPtr = ne.objectCast<Entity>();
+        if(entityPtr) {
+            e = entityPtr;
         }
     }
     return e;
diff --git a/tests/em/tst_querybuilder.cpp b/tests/em/tst_querybuilder.cpp
index b0a81eb..ae93b43 100644
--- a/tests/em/tst_querybuilder.cpp
+++ b/tests/em/tst_querybuilder.cpp
@@ -8,6 +8,9 @@ void QuerybuilderTest::initTestCase() {
     CuteEntityManager::EntityInstanceFactory::registerClass<WorkerGroup>();
     this->e = new CuteEntityManager::EntityManager("QSQLITE", ":memory:", "", "", "", "",
             true, "foreign_keys = ON", false);
+//    this->e = new
+//            CuteEntityManager::EntityManager("QSQLITE",
+//                    QDir::currentPath() + "/db.sqlite");
     QStringList inits = QStringList() << "Person" << "Group" << "Employee" << "WorkerGroup";
     QVERIFY2(this->e->startup("queryBuilderTest", inits), "Failure");
     QSharedPointer<Person> p1 = QSharedPointer<Person>(new Person("Lucien", "We",
