From 245dc57adedb0c8225aee0066c39f5ea38a39610 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Fri, 3 Jun 2016 16:31:09 +0200 Subject: Fixed pipelinetest --- common/pipeline.cpp | 8 ++++++-- tests/pipelinetest.cpp | 10 ++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/common/pipeline.cpp b/common/pipeline.cpp index a7059c1..100f158 100644 --- a/common/pipeline.cpp +++ b/common/pipeline.cpp @@ -228,8 +228,12 @@ KAsync::Job Pipeline::modifiedEntity(void const *command, size_t size) } auto modifyEntity = Commands::GetModifyEntity(command); Q_ASSERT(modifyEntity); - Q_ASSERT(modifyEntity->modifiedProperties()); - auto changeset = BufferUtils::fromVector(*modifyEntity->modifiedProperties()); + QList changeset; + if (modifyEntity->modifiedProperties()) { + changeset = BufferUtils::fromVector(*modifyEntity->modifiedProperties()); + } else { + Warning() << "No changeset available"; + } const qint64 baseRevision = modifyEntity->revision(); const bool replayToSource = modifyEntity->replayToSource(); // TODO rename modifyEntity->domainType to bufferType diff --git a/tests/pipelinetest.cpp b/tests/pipelinetest.cpp index 6ea2041..6cb327f 100644 --- a/tests/pipelinetest.cpp +++ b/tests/pipelinetest.cpp @@ -34,6 +34,9 @@ static QList getKeys(const QByteArray &dbEnv, const QByteArray &name auto db = transaction.openDatabase(name, nullptr, false); QList result; db.scan("", [&](const QByteArray &key, const QByteArray &value) { + if (Sink::Storage::isInternalKey(key)) { + return true; + } result << key; return true; }); @@ -106,13 +109,18 @@ QByteArray modifyEntityCommand(const flatbuffers::FlatBufferBuilder &entityFbb, flatbuffers::FlatBufferBuilder fbb; auto type = fbb.CreateString(Sink::ApplicationDomain::getTypeName().toStdString().data()); auto id = fbb.CreateString(std::string(uid.constData(), uid.size())); + auto summaryProperty = fbb.CreateString("summary"); + std::vector> modified; + modified.push_back(summaryProperty); auto delta = fbb.CreateVector(entityFbb.GetBufferPointer(), entityFbb.GetSize()); + auto modifiedProperties = fbb.CreateVector(modified); // auto delta = Sink::EntityBuffer::appendAsVector(fbb, buffer.constData(), buffer.size()); Sink::Commands::ModifyEntityBuilder builder(fbb); builder.add_domainType(type); builder.add_delta(delta); builder.add_revision(revision); builder.add_entityId(id); + builder.add_modifiedProperties(modifiedProperties); auto location = builder.Finish(); Sink::Commands::FinishModifyEntityBuffer(fbb, location); @@ -207,6 +215,7 @@ private slots: pipeline.commit(); auto result = getKeys("org.kde.pipelinetest.instance1", "event.main"); + qDebug() << result; QCOMPARE(result.size(), 1); } @@ -349,6 +358,7 @@ private slots: pipeline.setResourceType("test"); pipeline.setPreprocessors("event", QVector() << &testProcessor); pipeline.startTransaction(); + // pipeline.setAdaptorFactory("event", QSharedPointer::create()); // Actual test { -- cgit v1.2.3