getNum*() Dispatcher methods for testing

This commit is contained in:
Pavel Kirienko
2014-02-19 00:45:52 +04:00
parent 0d50ec077c
commit 903ec1b0a1
2 changed files with 15 additions and 0 deletions
@@ -43,6 +43,8 @@ class Dispatcher : Noncopyable
void remove(TransferListenerBase* listener);
void cleanup(uint64_t ts_monotonic);
void handleFrame(const RxFrame& frame);
int getNumEntries() const { return list_.length(); }
};
ListenerRegister lmsg_;
@@ -85,6 +87,10 @@ public:
void unregisterServiceRequestListener(TransferListenerBase* listener);
void unregisterServiceResponseListener(TransferListenerBase* listener);
int getNumMessageListeners() const { return lmsg_.getNumEntries(); }
int getNumServiceRequestListeners() const { return lsrv_req_.getNumEntries(); }
int getNumServiceResponseListeners() const { return lsrv_resp_.getNumEntries(); }
IOutgoingTransferRegistry* getOutgoingTransferRegistry() { return outgoing_transfer_reg_; }
NodeID getSelfNodeID() const { return self_node_id_; }
+9
View File
@@ -129,6 +129,11 @@ TEST(Dispatcher, Reception)
// Multiple service request listeners are not allowed
ASSERT_FALSE(dispatcher.registerServiceRequestListener(subscribers[3].get()));
// Item count validation
ASSERT_EQ(3, dispatcher.getNumMessageListeners());
ASSERT_EQ(1, dispatcher.getNumServiceRequestListeners());
ASSERT_EQ(2, dispatcher.getNumServiceResponseListeners());
for (int i = 0; i < NUM_SUBSCRIBERS; i++)
ASSERT_TRUE(subscribers[i]->isEmpty());
@@ -181,6 +186,10 @@ TEST(Dispatcher, Reception)
dispatcher.unregisterServiceRequestListener(subscribers[3].get());
dispatcher.unregisterServiceResponseListener(subscribers[4].get());
dispatcher.unregisterServiceResponseListener(subscribers[5].get());
ASSERT_EQ(0, dispatcher.getNumMessageListeners());
ASSERT_EQ(0, dispatcher.getNumServiceRequestListeners());
ASSERT_EQ(0, dispatcher.getNumServiceResponseListeners());
}