You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by jo...@apache.org on 2016/02/16 15:32:43 UTC
[1/3] mesos git commit: Cleaned up code style and fixed typos in
comments.
Repository: mesos
Updated Branches:
refs/heads/master 49107f276 -> cf801e78f
Cleaned up code style and fixed typos in comments.
Review: https://reviews.apache.org/r/43033/
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/df2987bb
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/df2987bb
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/df2987bb
Branch: refs/heads/master
Commit: df2987bb3930ae356e5867cb52e80df3bfbef1b6
Parents: 49107f2
Author: Neil Conway <ne...@gmail.com>
Authored: Tue Feb 16 09:00:09 2016 -0500
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Tue Feb 16 09:32:14 2016 -0500
----------------------------------------------------------------------
src/tests/group_tests.cpp | 39 +++++++++++++++++++-------------------
src/tests/zookeeper_tests.cpp | 22 ++++++++++-----------
src/zookeeper/group.cpp | 20 +++++++++----------
src/zookeeper/group.hpp | 22 ++++++++++-----------
src/zookeeper/zookeeper.hpp | 12 ++++++------
5 files changed, 57 insertions(+), 58 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/df2987bb/src/tests/group_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/group_tests.cpp b/src/tests/group_tests.cpp
index 6344fad..af530f3 100644
--- a/src/tests/group_tests.cpp
+++ b/src/tests/group_tests.cpp
@@ -37,6 +37,7 @@ using zookeeper::GroupProcess;
using process::Clock;
using process::Future;
+using std::set;
using std::string;
using testing::_;
@@ -56,13 +57,13 @@ TEST_F(GroupTest, Group)
AWAIT_READY(membership);
- Future<std::set<Group::Membership> > memberships = group.watch();
+ Future<set<Group::Membership>> memberships = group.watch();
AWAIT_READY(memberships);
EXPECT_EQ(1u, memberships.get().size());
EXPECT_EQ(1u, memberships.get().count(membership.get()));
- Future<Option<string> > data = group.data(membership.get());
+ Future<Option<string>> data = group.data(membership.get());
AWAIT_READY(data);
EXPECT_SOME_EQ("hello world", data.get());
@@ -95,7 +96,7 @@ TEST_F(GroupTest, GroupJoinWithDisconnect)
AWAIT_READY(membership);
- Future<std::set<Group::Membership> > memberships = group.watch();
+ Future<set<Group::Membership>> memberships = group.watch();
AWAIT_READY(memberships);
EXPECT_EQ(1u, memberships.get().size());
@@ -111,7 +112,7 @@ TEST_F(GroupTest, GroupDataWithDisconnect)
AWAIT_READY(membership);
- Future<std::set<Group::Membership> > memberships = group.watch();
+ Future<set<Group::Membership>> memberships = group.watch();
AWAIT_READY(memberships);
EXPECT_EQ(1u, memberships.get().size());
@@ -119,7 +120,7 @@ TEST_F(GroupTest, GroupDataWithDisconnect)
server->shutdownNetwork();
- Future<Option<string> > data = group.data(membership.get());
+ Future<Option<string>> data = group.data(membership.get());
EXPECT_TRUE(data.isPending());
@@ -138,7 +139,7 @@ TEST_F(GroupTest, GroupDataWithRemovedMembership)
AWAIT_READY(membership);
- Future<std::set<Group::Membership> > memberships = group.watch();
+ Future<set<Group::Membership>> memberships = group.watch();
AWAIT_READY(memberships);
EXPECT_EQ(1u, memberships.get().size());
@@ -146,7 +147,7 @@ TEST_F(GroupTest, GroupDataWithRemovedMembership)
AWAIT_EXPECT_TRUE(group.cancel(membership.get()));
- Future<Option<string> > data = group.data(membership.get());
+ Future<Option<string>> data = group.data(membership.get());
AWAIT_READY(data);
EXPECT_NONE(data.get());
@@ -161,13 +162,13 @@ TEST_F(GroupTest, GroupCancelWithDisconnect)
AWAIT_READY(membership);
- Future<std::set<Group::Membership> > memberships = group.watch();
+ Future<set<Group::Membership>> memberships = group.watch();
AWAIT_READY(memberships);
EXPECT_EQ(1u, memberships.get().size());
EXPECT_EQ(1u, memberships.get().count(membership.get()));
- Future<Option<string> > data = group.data(membership.get());
+ Future<Option<string>> data = group.data(membership.get());
AWAIT_READY(data);
EXPECT_SOME_EQ("hello world", data.get());
@@ -200,13 +201,13 @@ TEST_F(GroupTest, GroupWatchWithSessionExpiration)
AWAIT_READY(membership);
- Future<std::set<Group::Membership> > memberships = group.watch();
+ Future<set<Group::Membership>> memberships = group.watch();
AWAIT_READY(memberships);
EXPECT_EQ(1u, memberships.get().size());
EXPECT_EQ(1u, memberships.get().count(membership.get()));
- Future<Option<int64_t> > session = group.session();
+ Future<Option<int64_t>> session = group.session();
AWAIT_READY(session);
ASSERT_SOME(session.get());
@@ -236,7 +237,7 @@ TEST_F(GroupTest, MultipleGroups)
AWAIT_READY(membership2);
- Future<std::set<Group::Membership> > memberships1 = group1.watch();
+ Future<set<Group::Membership>> memberships1 = group1.watch();
AWAIT_READY(memberships1);
@@ -252,7 +253,7 @@ TEST_F(GroupTest, MultipleGroups)
EXPECT_EQ(1u, memberships1.get().count(membership1.get()));
EXPECT_EQ(1u, memberships1.get().count(membership2.get()));
- Future<std::set<Group::Membership> > memberships2 = group2.watch();
+ Future<set<Group::Membership>> memberships2 = group2.watch();
AWAIT_READY(memberships2);
@@ -276,7 +277,7 @@ TEST_F(GroupTest, MultipleGroups)
}
}
- Future<Option<int64_t> > session1 = group1.session();
+ Future<Option<int64_t>> session1 = group1.session();
AWAIT_READY(session1);
ASSERT_SOME(session1.get());
@@ -355,7 +356,7 @@ TEST_F(GroupTest, RetryableErrors)
// Wait for Group to connect to get hold of the session.
AWAIT_READY(connected);
- Future<Option<int64_t> > session = group.session();
+ Future<Option<int64_t>> session = group.session();
AWAIT_READY(session);
ASSERT_SOME(session.get());
@@ -410,13 +411,13 @@ TEST_F(GroupTest, LabelledGroup)
AWAIT_READY(membership);
- Future<std::set<Group::Membership> > memberships = group.watch();
+ Future<set<Group::Membership>> memberships = group.watch();
AWAIT_READY(memberships);
EXPECT_EQ(1u, memberships.get().size());
EXPECT_EQ(1u, memberships.get().count(membership.get()));
- Future<Option<string> > data = group.data(membership.get());
+ Future<Option<string>> data = group.data(membership.get());
AWAIT_READY(data);
EXPECT_SOME_EQ("hello world", data.get());
@@ -436,7 +437,7 @@ TEST_F(GroupTest, LabelledGroup)
// This test checks that the `expired` event is invoked even if we
-// have not ever established a connection to ZooKeeper (MESOS-4546).
+// have never established a connection to ZooKeeper (MESOS-4546).
TEST_F(GroupTest, ConnectTimer)
{
const Duration sessionTimeout = Seconds(10);
@@ -451,7 +452,7 @@ TEST_F(GroupTest, ConnectTimer)
Group group(server->connectString(), sessionTimeout, "/test/");
// Advance the clock to ensure that we forcibly expire the current
- // ZooKeeper connection attempt and try to reconnect.
+ // ZooKeeper connection attempt.
Clock::advance(sessionTimeout);
AWAIT_READY(expired);
http://git-wip-us.apache.org/repos/asf/mesos/blob/df2987bb/src/tests/zookeeper_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/zookeeper_tests.cpp b/src/tests/zookeeper_tests.cpp
index 0665d91..6bde10b 100644
--- a/src/tests/zookeeper_tests.cpp
+++ b/src/tests/zookeeper_tests.cpp
@@ -81,14 +81,14 @@ TEST_F(ZooKeeperTest, SessionTimeoutNegotiation)
watcher.awaitSessionEvent(ZOO_CONNECTED_STATE);
// The requested timeout is less than server's min value so the
- // negotiated result is the sever's min value.
+ // negotiated result is the server's min value.
EXPECT_EQ(Seconds(8), zk1.getSessionTimeout());
ZooKeeper zk2(server->connectString(), Seconds(22), &watcher);
watcher.awaitSessionEvent(ZOO_CONNECTED_STATE);
// The requested timeout is greater than server's max value so the
- // negotiated result is the sever's max value.
+ // negotiated result is the server's max value.
EXPECT_EQ(Seconds(20), zk2.getSessionTimeout());
}
@@ -146,18 +146,16 @@ TEST_F(ZooKeeperTest, LeaderDetector)
Group group(server->connectString(), NO_TIMEOUT, "/test/");
// Initialize two members.
- Future<Group::Membership> membership1 =
- group.join("member 1");
+ Future<Group::Membership> membership1 = group.join("member 1");
AWAIT_READY(membership1);
- Future<Group::Membership> membership2 =
- group.join("member 2");
+
+ Future<Group::Membership> membership2 = group.join("member 2");
AWAIT_READY(membership2);
LeaderDetector detector(&group);
// Detect the leader.
- Future<Option<Group::Membership> > leader =
- detector.detect(None());
+ Future<Option<Group::Membership>> leader = detector.detect(None());
AWAIT_READY(leader);
ASSERT_SOME_EQ(membership1.get(), leader.get());
@@ -204,7 +202,7 @@ TEST_F(ZooKeeperTest, LeaderDetectorTimeoutHandling)
AWAIT_READY(group.join("member 1"));
- Future<Option<Group::Membership> > leader = detector.detect();
+ Future<Option<Group::Membership>> leader = detector.detect();
AWAIT_READY(leader);
EXPECT_SOME(leader.get());
@@ -241,7 +239,7 @@ TEST_F(ZooKeeperTest, LeaderDetectorCancellationHandling)
AWAIT_READY(group.join("member 1"));
- Future<Option<Group::Membership> > leader = detector.detect();
+ Future<Option<Group::Membership>> leader = detector.detect();
AWAIT_READY(leader);
EXPECT_SOME(leader.get());
@@ -290,7 +288,7 @@ TEST_F(ZooKeeperTest, LeaderContender)
contender = Owned<LeaderContender>(
new LeaderContender(&group, "candidate 1", master::MASTER_INFO_LABEL));
- Future<Future<Nothing> > candidated = contender->contend();
+ Future<Future<Nothing>> candidated = contender->contend();
AWAIT_READY(candidated);
Future<Nothing> lostCandidacy = candidated.get();
@@ -298,7 +296,7 @@ TEST_F(ZooKeeperTest, LeaderContender)
// Expire the Group session while we are watching for updates from
// the contender and the candidacy will be lost.
- Future<Option<int64_t> > session = group.session();
+ Future<Option<int64_t>> session = group.session();
AWAIT_READY(session);
ASSERT_SOME(session.get());
http://git-wip-us.apache.org/repos/asf/mesos/blob/df2987bb/src/zookeeper/group.cpp
----------------------------------------------------------------------
diff --git a/src/zookeeper/group.cpp b/src/zookeeper/group.cpp
index ded1458..7aa95a7 100644
--- a/src/zookeeper/group.cpp
+++ b/src/zookeeper/group.cpp
@@ -246,7 +246,7 @@ Future<bool> GroupProcess::cancel(const Group::Membership& membership)
}
-Future<Option<string> > GroupProcess::data(const Group::Membership& membership)
+Future<Option<string>> GroupProcess::data(const Group::Membership& membership)
{
if (error.isSome()) {
return Failure(error.get());
@@ -260,7 +260,7 @@ Future<Option<string> > GroupProcess::data(const Group::Membership& membership)
// client can assume a happens-before ordering of operations (i.e.,
// the first request will happen before the second, etc).
- Result<Option<string> > result = doData(membership);
+ Result<Option<string>> result = doData(membership);
if (result.isNone()) { // Try again later.
Data* data = new Data(membership);
@@ -274,7 +274,7 @@ Future<Option<string> > GroupProcess::data(const Group::Membership& membership)
}
-Future<set<Group::Membership> > GroupProcess::watch(
+Future<set<Group::Membership>> GroupProcess::watch(
const set<Group::Membership>& expected)
{
if (error.isSome()) {
@@ -328,7 +328,7 @@ Future<set<Group::Membership> > GroupProcess::watch(
}
-Future<Option<int64_t> > GroupProcess::session()
+Future<Option<int64_t>> GroupProcess::session()
{
if (error.isSome()) {
return Failure(error.get());
@@ -690,7 +690,7 @@ Result<bool> GroupProcess::doCancel(const Group::Membership& membership)
}
-Result<Option<string> > GroupProcess::doData(
+Result<Option<string>> GroupProcess::doData(
const Group::Membership& membership)
{
CHECK_EQ(state, READY);
@@ -738,7 +738,7 @@ Try<bool> GroupProcess::cache()
}
// Convert results to sequence numbers and (optionally) labels.
- hashmap<int32_t, Option<string> > sequences;
+ hashmap<int32_t, Option<string>> sequences;
foreach (const string& result, results) {
vector<string> tokens = strings::tokenize(result, "_");
@@ -888,7 +888,7 @@ Try<bool> GroupProcess::sync()
while (!pending.datas.empty()) {
Data* data = pending.datas.front();
// TODO(benh): Ignore if future has been discarded?
- Result<Option<string> > result = doData(data->membership);
+ Result<Option<string>> result = doData(data->membership);
if (result.isNone()) {
return false; // Try again later.
} else if (result.isError()) {
@@ -1036,20 +1036,20 @@ Future<bool> Group::cancel(const Group::Membership& membership)
}
-Future<Option<string> > Group::data(const Group::Membership& membership)
+Future<Option<string>> Group::data(const Group::Membership& membership)
{
return dispatch(process, &GroupProcess::data, membership);
}
-Future<set<Group::Membership> > Group::watch(
+Future<set<Group::Membership>> Group::watch(
const set<Group::Membership>& expected)
{
return dispatch(process, &GroupProcess::watch, expected);
}
-Future<Option<int64_t> > Group::session()
+Future<Option<int64_t>> Group::session()
{
return dispatch(process, &GroupProcess::session);
}
http://git-wip-us.apache.org/repos/asf/mesos/blob/df2987bb/src/zookeeper/group.hpp
----------------------------------------------------------------------
diff --git a/src/zookeeper/group.hpp b/src/zookeeper/group.hpp
index db8a120..2003b60 100644
--- a/src/zookeeper/group.hpp
+++ b/src/zookeeper/group.hpp
@@ -100,7 +100,7 @@ public:
// has been cancelled. In which case, the value of the future is
// true if you own this membership and cancelled it by invoking
// Group::cancel. Otherwise, the value of the future is false (and
- // could signify cancellation due to a sesssion expiration or
+ // could signify cancellation due to a session expiration or
// operator error).
process::Future<bool> cancelled() const
{
@@ -150,16 +150,16 @@ public:
// group membership.
// A None is returned if the specified membership doesn't exist,
// e.g., it can be removed before this call can read it content.
- process::Future<Option<std::string> > data(const Membership& membership);
+ process::Future<Option<std::string>> data(const Membership& membership);
// Returns a future that gets set when the group memberships differ
// from the "expected" memberships specified.
- process::Future<std::set<Membership> > watch(
+ process::Future<std::set<Membership>> watch(
const std::set<Membership>& expected = std::set<Membership>());
// Returns the current ZooKeeper session associated with this group,
// or none if no session currently exists.
- process::Future<Option<int64_t> > session();
+ process::Future<Option<int64_t>> session();
// Made public for testing purposes.
GroupProcess* process;
@@ -192,11 +192,11 @@ public:
const std::string& data,
const Option<std::string>& label);
process::Future<bool> cancel(const Group::Membership& membership);
- process::Future<Option<std::string> > data(
+ process::Future<Option<std::string>> data(
const Group::Membership& membership);
- process::Future<std::set<Group::Membership> > watch(
+ process::Future<std::set<Group::Membership>> watch(
const std::set<Group::Membership>& expected);
- process::Future<Option<int64_t> > session();
+ process::Future<Option<int64_t>> session();
// ZooKeeper events.
// Note that events from previous sessions are dropped.
@@ -214,7 +214,7 @@ private:
const std::string& data,
const Option<std::string>& label);
Result<bool> doCancel(const Group::Membership& membership);
- Result<Option<std::string> > doData(const Group::Membership& membership);
+ Result<Option<std::string>> doData(const Group::Membership& membership);
// Returns true if authentication is successful, false if the
// failure is retryable and Error otherwise.
@@ -310,7 +310,7 @@ private:
explicit Data(const Group::Membership& _membership)
: membership(_membership) {}
Group::Membership membership;
- process::Promise<Option<std::string> > promise;
+ process::Promise<Option<std::string>> promise;
};
struct Watch
@@ -318,7 +318,7 @@ private:
explicit Watch(const std::set<Group::Membership>& _expected)
: expected(_expected) {}
std::set<Group::Membership> expected;
- process::Promise<std::set<Group::Membership> > promise;
+ process::Promise<std::set<Group::Membership>> promise;
};
struct {
@@ -339,7 +339,7 @@ private:
// Cache of owned + unowned, where 'None' represents an invalid
// cache and 'Some' represents a valid cache.
- Option<std::set<Group::Membership> > memberships;
+ Option<std::set<Group::Membership>> memberships;
// A timer that controls when we should give up on waiting for the
// current connection attempt to succeed and try to reconnect.
http://git-wip-us.apache.org/repos/asf/mesos/blob/df2987bb/src/zookeeper/zookeeper.hpp
----------------------------------------------------------------------
diff --git a/src/zookeeper/zookeeper.hpp b/src/zookeeper/zookeeper.hpp
index a29a004..9191df5 100644
--- a/src/zookeeper/zookeeper.hpp
+++ b/src/zookeeper/zookeeper.hpp
@@ -41,7 +41,7 @@ class ZooKeeperProcess;
/**
* This interface specifies the public interface an event handler
* class must implement. A ZooKeeper client will get various events
- * from the ZooKeepr server it connects to. An application using such
+ * from the ZooKeeper server it connects to. An application using such
* a client handles these events by registering a callback object with
* the client. The callback object is expected to be an instance of a
* class that implements Watcher interface.
@@ -181,7 +181,7 @@ public:
* znodes as required; note that 'flags' and 'data' will only be
* applied to the creation of 'basename(path)'.
* \return one of the following codes are returned:
- * ZOK operation completed succesfully
+ * ZOK operation completed successfully
* ZNONODE the parent node does not exist.
* ZNODEEXISTS the node already exists
* ZNOAUTH the client does not have permission.
@@ -208,7 +208,7 @@ public:
* expected version. If -1 is used the version check will not take
* place.
* \return one of the following values is returned.
- * ZOK operation completed succesfully
+ * ZOK operation completed successfully
* ZNONODE the node does not exist.
* ZNOAUTH the client does not have permission.
* ZBADVERSION expected version does not match actual version.
@@ -230,7 +230,7 @@ public:
* nodes to appear.
* \param stat the return stat value of the node.
* \return return code of the function call.
- * ZOK operation completed succesfully
+ * ZOK operation completed successfully
* ZNONODE the node does not exist.
* ZNOAUTH the client does not have permission.
* ZBADARGUMENTS - invalid input parameters
@@ -250,7 +250,7 @@ public:
* \param stat if not NULL, will hold the value of stat for the path
* on return.
* \return return value of the function call.
- * ZOK operation completed succesfully
+ * ZOK operation completed successfully
* ZNONODE the node does not exist.
* ZNOAUTH the client does not have permission.
* ZBADARGUMENTS - invalid input parameters
@@ -294,7 +294,7 @@ public:
* the actual version of the node does not match the expected version. If -1 is
* used the version check will not take place.
* \return the return code for the function call.
- * ZOK operation completed succesfully
+ * ZOK operation completed successfully
* ZNONODE the node does not exist.
* ZNOAUTH the client does not have permission.
* ZBADVERSION expected version does not match actual version.
[2/3] mesos git commit: Fixed a leak of a `ZooKeeperMasterContender`
in a test case.
Posted by jo...@apache.org.
Fixed a leak of a `ZooKeeperMasterContender` in a test case.
Review: https://reviews.apache.org/r/43065/
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/01fb5e1c
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/01fb5e1c
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/01fb5e1c
Branch: refs/heads/master
Commit: 01fb5e1c4ae7ca56e737f16568cd380efd20322c
Parents: df2987b
Author: Neil Conway <ne...@gmail.com>
Authored: Tue Feb 16 09:03:20 2016 -0500
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Tue Feb 16 09:32:19 2016 -0500
----------------------------------------------------------------------
src/tests/master_contender_detector_tests.cpp | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/01fb5e1c/src/tests/master_contender_detector_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/master_contender_detector_tests.cpp b/src/tests/master_contender_detector_tests.cpp
index 6375586..255ab81 100644
--- a/src/tests/master_contender_detector_tests.cpp
+++ b/src/tests/master_contender_detector_tests.cpp
@@ -217,7 +217,7 @@ TEST_F(ZooKeeperMasterContenderDetectorTest, MasterContender)
Owned<zookeeper::Group> group(
new Group(url.get(), MASTER_CONTENDER_ZK_SESSION_TIMEOUT));
- ZooKeeperMasterContender* contender = new ZooKeeperMasterContender(group);
+ ZooKeeperMasterContender contender(group);
PID<Master> pid;
pid.address.ip = net::IP(10000000);
@@ -225,8 +225,8 @@ TEST_F(ZooKeeperMasterContenderDetectorTest, MasterContender)
MasterInfo master = internal::protobuf::createMasterInfo(pid);
- contender->initialize(master);
- Future<Future<Nothing> > contended = contender->contend();
+ contender.initialize(master);
+ Future<Future<Nothing> > contended = contender.contend();
AWAIT_READY(contended);
ZooKeeperMasterDetector detector(url.get());
[3/3] mesos git commit: Added EXPECT_NO_FUTURE_DISPATCHES to
libprocess.
Posted by jo...@apache.org.
Added EXPECT_NO_FUTURE_DISPATCHES to libprocess.
This allows a unit test to assert that a given libprocess message
will not be dispatched.
Review: https://reviews.apache.org/r/43034/
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/cf801e78
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/cf801e78
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/cf801e78
Branch: refs/heads/master
Commit: cf801e78f2844855e19f025ebdf54dccbc4c28a9
Parents: 01fb5e1
Author: Neil Conway <ne...@gmail.com>
Authored: Tue Feb 16 09:10:42 2016 -0500
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Tue Feb 16 09:32:26 2016 -0500
----------------------------------------------------------------------
3rdparty/libprocess/include/process/gmock.hpp | 14 ++++++++++++++
1 file changed, 14 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/cf801e78/3rdparty/libprocess/include/process/gmock.hpp
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/include/process/gmock.hpp b/3rdparty/libprocess/include/process/gmock.hpp
index 22a0eac..15b982f 100644
--- a/3rdparty/libprocess/include/process/gmock.hpp
+++ b/3rdparty/libprocess/include/process/gmock.hpp
@@ -62,6 +62,8 @@
#define DROP_DISPATCHES(pid, method) \
process::DropDispatches(pid, method)
+#define EXPECT_NO_FUTURE_DISPATCHES(pid, method) \
+ process::ExpectNoFutureDispatches(pid, method)
ACTION_TEMPLATE(PromiseArg,
HAS_1_TEMPLATE_PARAMS(int, k),
@@ -627,6 +629,18 @@ void DropDispatches(PID pid, Method method)
}
}
+
+template <typename PID, typename Method>
+void ExpectNoFutureDispatches(PID pid, Method method)
+{
+ TestsFilter* filter = FilterTestEventListener::instance()->install();
+ synchronized (filter->mutex) {
+ EXPECT_CALL(filter->mock, filter(testing::A<const DispatchEvent&>()))
+ .With(DispatchMatcher(pid, method))
+ .Times(0);
+ }
+}
+
} // namespace process {
#endif // __PROCESS_GMOCK_HPP__