From 4deba9adf141a4d08dae7ea1b5aa13dd8a22fbb0 Mon Sep 17 00:00:00 2001 From: honghaiz Date: Tue, 14 Jun 2016 12:49:49 -0700 Subject: [PATCH] Add SigslotTester0 for testing signals without argument. BUG= Review-Url: https://codereview.webrtc.org/2066443003 Cr-Commit-Position: refs/heads/master@{#13141} --- webrtc/base/sigslottester.h | 19 ++++++++++++++++++- webrtc/base/sigslottester.h.pump | 19 ++++++++++++++++++- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/webrtc/base/sigslottester.h b/webrtc/base/sigslottester.h index cdbd44aa90..ffd829427a 100755 --- a/webrtc/base/sigslottester.h +++ b/webrtc/base/sigslottester.h @@ -44,7 +44,24 @@ namespace rtc { -// For all the templates below: +// Base version for testing signals that passes no arguments. +class SigslotTester0 : public sigslot::has_slots<> { + public: + explicit SigslotTester0(sigslot::signal0<>* signal) : callback_count_(0) { + signal->connect(this, &SigslotTester0::OnSignalCallback); + } + + int callback_count() const { return callback_count_; } + + private: + void OnSignalCallback() { callback_count_++; } + int callback_count_; + + DISALLOW_COPY_AND_ASSIGN(SigslotTester0); +}; + +// Versions below are for testing signals that pass arguments. For all the +// templates below: // - A1-A5 is the type of the argument i in the callback. Signals may and often // do use const-references here for efficiency. // - C1-C5 is the type of the variable to capture argument i. These should be diff --git a/webrtc/base/sigslottester.h.pump b/webrtc/base/sigslottester.h.pump index 4410991d9e..27cd6541cc 100755 --- a/webrtc/base/sigslottester.h.pump +++ b/webrtc/base/sigslottester.h.pump @@ -40,7 +40,24 @@ namespace rtc { -// For all the templates below: +// Base version for testing signals that passes no arguments. +class SigslotTester0 : public sigslot::has_slots<> { + public: + explicit SigslotTester0(sigslot::signal0<>* signal) : callback_count_(0) { + signal->connect(this, &SigslotTester0::OnSignalCallback); + } + + int callback_count() const { return callback_count_; } + + private: + void OnSignalCallback() { callback_count_++; } + int callback_count_; + + DISALLOW_COPY_AND_ASSIGN(SigslotTester0); +}; + +// Versions below are for testing signals that pass arguments. For all the +// templates below: // - A1-A5 is the type of the argument i in the callback. Signals may and often // do use const-references here for efficiency. // - C1-C5 is the type of the variable to capture argument i. These should be