Example #1
0
    void checkInitialAndCleanedUpState()
    {
        // GIVEN
        Handler handler;
        Skeleton backendSkeleton;
        backendSkeleton.setHandler(&handler);

        // THEN
        QVERIFY(backendSkeleton.peerId().isNull());
        QCOMPARE(backendSkeleton.isEnabled(), false);
        QCOMPARE(backendSkeleton.jointNames().size(), 0);
        QCOMPARE(backendSkeleton.jointLocalPoses().size(), 0);

        // GIVEN
        const QVector<QString> names = (QVector<QString>()
                                        << QLatin1String("root")
                                        << QLatin1String("child1")
                                        << QLatin1String("child2"));
        const QVector<Sqt> localPoses = (QVector<Sqt>() << Sqt() << Sqt() << Sqt());

        // WHEN
        backendSkeleton.setJointNames(names);
        backendSkeleton.setJointLocalPoses(localPoses);
        backendSkeleton.cleanup();

        // THEN
        QCOMPARE(backendSkeleton.isEnabled(), false);
        QCOMPARE(backendSkeleton.jointNames().size(), 0);
        QCOMPARE(backendSkeleton.jointLocalPoses().size(), 0);
    }
Example #2
0
    void checkPropertyChanges()
    {
        // GIVEN
        Handler handler;
        Skeleton backendSkeleton;
        backendSkeleton.setHandler(&handler);
        QPropertyUpdatedChangePtr updateChange;

        // WHEN
        updateChange = QPropertyUpdatedChangePtr::create(QNodeId());
        updateChange->setPropertyName("enabled");
        updateChange->setValue(true);
        backendSkeleton.sceneChangeEvent(updateChange);

        // THEN
        QCOMPARE(backendSkeleton.isEnabled(), true);

        // GIVEN
        const QVector<QString> names = (QVector<QString>()
                                        << QLatin1String("root")
                                        << QLatin1String("child1")
                                        << QLatin1String("child2"));
        const QVector<Sqt> localPoses = (QVector<Sqt>() << Sqt() << Sqt() << Sqt());

        // WHEN
        JointNamesAndLocalPoses namesAndPoses;
        namesAndPoses.names = names;
        namesAndPoses.localPoses = localPoses;

        updateChange = QPropertyUpdatedChangePtr::create(QNodeId());
        updateChange->setPropertyName("jointNamesAndLocalPoses");
        updateChange->setValue(QVariant::fromValue(namesAndPoses));
        backendSkeleton.sceneChangeEvent(updateChange);

        // THEN
        QCOMPARE(backendSkeleton.jointNames(), names);
        QCOMPARE(backendSkeleton.jointLocalPoses(), localPoses);
    }