aboutsummaryrefslogtreecommitdiffstats
path: root/messagebus/src/tests/routingcontext/routingcontext.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'messagebus/src/tests/routingcontext/routingcontext.cpp')
-rw-r--r--messagebus/src/tests/routingcontext/routingcontext.cpp80
1 files changed, 35 insertions, 45 deletions
diff --git a/messagebus/src/tests/routingcontext/routingcontext.cpp b/messagebus/src/tests/routingcontext/routingcontext.cpp
index c21725a482e..d2c8cfcb0db 100644
--- a/messagebus/src/tests/routingcontext/routingcontext.cpp
+++ b/messagebus/src/tests/routingcontext/routingcontext.cpp
@@ -15,12 +15,6 @@
using namespace mbus;
-////////////////////////////////////////////////////////////////////////////////
-//
-// Utilities
-//
-////////////////////////////////////////////////////////////////////////////////
-
using vespalib::make_string;
static const duration TIMEOUT = 120s;
@@ -40,7 +34,7 @@ class CustomPolicyFactory : public SimpleProtocol::IPolicyFactory {
private:
friend class CustomPolicy;
- bool _forward;
+ bool _forward;
std::vector<string> _expectedAll;
std::vector<string> _expectedMatched;
@@ -64,11 +58,9 @@ public:
void merge(RoutingContext &ctx) override;
};
-CustomPolicy::CustomPolicy(CustomPolicyFactory &factory) :
- _factory(factory)
-{
- // empty
-}
+CustomPolicy::CustomPolicy(CustomPolicyFactory &factory)
+ : _factory(factory)
+{ }
void
CustomPolicy::select(RoutingContext &ctx)
@@ -79,13 +71,13 @@ CustomPolicy::select(RoutingContext &ctx)
const std::vector<Route> &all = ctx.getAllRecipients();
if (_factory._expectedAll.size() == all.size()) {
ctx.trace(1, make_string("Got %d expected recipients.", (uint32_t)all.size()));
- for (const auto & it : all) {
- if (find(_factory._expectedAll.begin(), _factory._expectedAll.end(), it.toString()) != _factory._expectedAll.end()) {
- ctx.trace(1, make_string("Got expected recipient '%s'.", it.toString().c_str()));
+ for (const auto & route : all) {
+ if (find(_factory._expectedAll.begin(), _factory._expectedAll.end(), route.toString()) != _factory._expectedAll.end()) {
+ ctx.trace(1, make_string("Got expected recipient '%s'.", route.toString().c_str()));
} else {
reply->addError(Error(ErrorCode::APP_FATAL_ERROR,
make_string("Matched recipient '%s' not expected.",
- it.toString().c_str())));
+ route.toString().c_str())));
}
}
} else {
@@ -113,12 +105,12 @@ CustomPolicy::select(RoutingContext &ctx)
ctx.getMatchedRecipients(matched);
if (_factory._expectedMatched.size() == matched.size()) {
ctx.trace(1, make_string("Got %d expected recipients.", (uint32_t)matched.size()));
- for (auto & it : matched) {
- if (find(_factory._expectedMatched.begin(), _factory._expectedMatched.end(), it.toString()) != _factory._expectedMatched.end()) {
- ctx.trace(1, make_string("Got matched recipient '%s'.", it.toString().c_str()));
+ for (auto & route : matched) {
+ if (find(_factory._expectedMatched.begin(), _factory._expectedMatched.end(), route.toString()) != _factory._expectedMatched.end()) {
+ ctx.trace(1, make_string("Got matched recipient '%s'.", route.toString().c_str()));
} else {
reply->addError(Error(ErrorCode::APP_FATAL_ERROR,
- make_string("Matched recipient '%s' not expected.", it.toString().c_str())));
+ make_string("Matched recipient '%s' not expected.", route.toString().c_str())));
}
}
} else {
@@ -129,8 +121,8 @@ CustomPolicy::select(RoutingContext &ctx)
}
if (!reply->hasErrors() && _factory._forward) {
- for (auto & it : matched) {
- ctx.addChild(it);
+ for (auto & route : matched) {
+ ctx.addChild(route);
}
} else {
ctx.setReply(std::move(reply));
@@ -140,7 +132,7 @@ CustomPolicy::select(RoutingContext &ctx)
void
CustomPolicy::merge(RoutingContext &ctx)
{
- Reply::UP ret(new EmptyReply());
+ auto ret = std::make_unique<EmptyReply>();
for (RoutingNodeIterator it = ctx.getChildIterator();
it.isValid(); it.next())
{
@@ -202,7 +194,7 @@ public:
class Test : public vespalib::TestApp {
private:
- Message::UP createMessage(const string &msg);
+ static Message::UP createMessage(const string &msg);
public:
int Main() override;
@@ -289,11 +281,11 @@ Test::testSingleDirective(TestData &data)
StringList().add("foo").add("bar"))));
data._srcServer.mb.putProtocol(protocol);
data._srcServer.mb.setupRouting(RoutingSpec().addTable(RoutingTableSpec(SimpleProtocol::NAME)
- .addRoute(std::move(RouteSpec("myroute").addHop("myhop")))
- .addHop(std::move(HopSpec("myhop", "[Custom]")
+ .addRoute(RouteSpec("myroute").addHop("myhop"))
+ .addHop(HopSpec("myhop", "[Custom]")
.addRecipient("foo")
.addRecipient("bar")
- .addRecipient("baz/cox")))));
+ .addRecipient("baz/cox"))));
for (uint32_t i = 0; i < 2; ++i) {
EXPECT_TRUE(data._srcSession->send(createMessage("msg"), "myroute").isAccepted());
Reply::UP reply = data._srcHandler.getReply();
@@ -314,13 +306,13 @@ Test::testMoreDirectives(TestData &data)
StringList().add("foo/bar0/baz").add("foo/bar1/baz"))));
data._srcServer.mb.putProtocol(protocol);
data._srcServer.mb.setupRouting(RoutingSpec().addTable(RoutingTableSpec(SimpleProtocol::NAME)
- .addRoute(std::move(RouteSpec("myroute").addHop("myhop")))
- .addHop(std::move(HopSpec("myhop", "foo/[Custom]/baz")
+ .addRoute(RouteSpec("myroute").addHop("myhop"))
+ .addHop(HopSpec("myhop", "foo/[Custom]/baz")
.addRecipient("foo")
.addRecipient("foo/bar")
.addRecipient("foo/bar0/baz")
.addRecipient("foo/bar1/baz")
- .addRecipient("foo/bar/baz/cox")))));
+ .addRecipient("foo/bar/baz/cox"))));
for (uint32_t i = 0; i < 2; ++i) {
EXPECT_TRUE(data._srcSession->send(createMessage("msg"), "myroute").isAccepted());
Reply::UP reply = data._srcHandler.getReply();
@@ -333,21 +325,19 @@ Test::testMoreDirectives(TestData &data)
void
Test::testRecipientsRemain(TestData &data)
{
- IProtocol::SP protocol(new SimpleProtocol());
+ auto protocol = std::make_shared<SimpleProtocol>();
auto &simple = dynamic_cast<SimpleProtocol&>(*protocol);
- simple.addPolicyFactory("First", SimpleProtocol::IPolicyFactory::SP(new CustomPolicyFactory(
- true,
- StringList().add("foo/bar"),
- StringList().add("foo/[Second]"))));
- simple.addPolicyFactory("Second", SimpleProtocol::IPolicyFactory::SP(new CustomPolicyFactory(
- false,
- StringList().add("foo/bar"),
- StringList().add("foo/bar"))));
+ simple.addPolicyFactory("First", std::make_shared<CustomPolicyFactory>(true,
+ StringList().add("foo/bar"),
+ StringList().add("foo/[Second]")));
+ simple.addPolicyFactory("Second", std::make_shared<CustomPolicyFactory>(false,
+ StringList().add("foo/bar"),
+ StringList().add("foo/bar")));
data._srcServer.mb.putProtocol(protocol);
data._srcServer.mb.setupRouting(RoutingSpec().addTable(RoutingTableSpec(SimpleProtocol::NAME)
- .addRoute(std::move(RouteSpec("myroute").addHop("myhop")))
- .addHop(std::move(HopSpec("myhop", "[First]/[Second]")
- .addRecipient("foo/bar")))));
+ .addRoute(RouteSpec("myroute").addHop("myhop"))
+ .addHop(HopSpec("myhop", "[First]/[Second]")
+ .addRecipient("foo/bar"))));
for (uint32_t i = 0; i < 2; ++i) {
EXPECT_TRUE(data._srcSession->send(createMessage("msg"), "myroute").isAccepted());
Reply::UP reply = data._srcHandler.getReply();
@@ -363,11 +353,11 @@ Test::testConstRoute(TestData &data)
auto protocol = std::make_shared<SimpleProtocol>();
auto &simple = dynamic_cast<SimpleProtocol&>(*protocol);
simple.addPolicyFactory("DocumentRouteSelector",
- std::make_unique<CustomPolicyFactory>(true, StringList().add("dst"), StringList().add("dst")));
+ std::make_shared<CustomPolicyFactory>(true, StringList().add("dst"), StringList().add("dst")));
data._srcServer.mb.putProtocol(protocol);
data._srcServer.mb.setupRouting(RoutingSpec().addTable(RoutingTableSpec(SimpleProtocol::NAME)
- .addRoute(std::move(RouteSpec("default").addHop("indexing")))
- .addHop(std::move(HopSpec("indexing", "[DocumentRouteSelector]").addRecipient("dst")))
+ .addRoute(RouteSpec("default").addHop("indexing"))
+ .addHop(HopSpec("indexing", "[DocumentRouteSelector]").addRecipient("dst"))
.addHop(HopSpec("dst", "dst/session"))));
for (uint32_t i = 0; i < 2; ++i) {
EXPECT_TRUE(data._srcSession->send(createMessage("msg"), Route::parse("route:default")).isAccepted());