memgraph/tests/unit/distributed_reset.cpp
Teon Banek e128a9f80f Move distributed query stuff to new folder
Summary:
The new distributed directory is inside the query, and mirrors the query
structure. This groups all of the distributed (query) source code
together, which should make the potential directory extraction easier.

Reviewers: mferencevic, llugovic, mtomic

Reviewed By: mferencevic

Subscribers: pullbot

Differential Revision: https://phabricator.memgraph.io/D1923
2019-04-24 09:34:53 +02:00

37 lines
1.1 KiB
C++

#include "gtest/gtest.h"
#include "distributed/plan_dispatcher.hpp"
#include "distributed_common.hpp"
#include "query/context.hpp"
#include "query/distributed/plan/ops.hpp"
#include "query/interpret/frame.hpp"
class DistributedReset : public DistributedGraphDbTest {
protected:
DistributedReset() : DistributedGraphDbTest("reset") {}
};
TEST_F(DistributedReset, ResetTest) {
query::SymbolTable symbol_table;
auto once = std::make_shared<query::plan::Once>();
auto pull_remote = std::make_shared<query::plan::PullRemote>(
once, 42, std::vector<query::Symbol>());
master().plan_dispatcher().DispatchPlan(42, once, symbol_table);
auto dba = master().Access();
query::Frame frame(0);
query::ExecutionContext context{dba.get()};
auto pull_remote_cursor = pull_remote->MakeCursor(*dba);
for (int i = 0; i < 3; ++i) {
EXPECT_TRUE(pull_remote_cursor->Pull(frame, context));
}
EXPECT_FALSE(pull_remote_cursor->Pull(frame, context));
pull_remote_cursor->Reset();
for (int i = 0; i < 3; ++i) {
EXPECT_TRUE(pull_remote_cursor->Pull(frame, context));
}
EXPECT_FALSE(pull_remote_cursor->Pull(frame, context));
}