#include "stdafx.h"
#include "MultipleSenderTest.h"
#include "EventSender.h"

class MultiEventA:
  public virtual EventReceiver
{
public:
  virtual void Event(void) = 0;
};

class MultiEventB:
  public virtual EventReceiver
{
public:
  virtual void Event(void) = 0;
};

class MultiSender:
  public EventSender<MultiEventA, MultiEventB>
{
};

MultipleSenderTest::MultipleSenderTest(void) {}

TEST_F(MultipleSenderTest, VerifyMultiSendA) {
  m_sender->Fire(&MultiEventA::Event)();
}

TEST_F(MultipleSenderTest, VerifyMultiSendB) {
  m_sender->Fire(&MultiEventB::Event)();
}

#include "stdafx.h"
#include "MultipleSenderTest.h"
#include "EventSender.h"

class MultiEventA:
  public virtual EventReceiver
{
public:
  virtual void EventA(void) = 0;
};

class MultiEventB:
  public virtual EventReceiver
{
public:
  virtual void EventB(void) = 0;
};

class MultiSender:
  public EventSender<MultiEventA, MultiEventB>
{
};

MultipleSenderTest::MultipleSenderTest(void) {}

TEST_F(MultipleSenderTest, VerifyMultiSendA) {
  m_sender->Fire(&MultiEventA::EventA)();
}

TEST_F(MultipleSenderTest, VerifyMultiSendB) {
  m_sender->Fire(&MultiEventB::EventB)();
}

--- 
+++ 
@@ -6,14 +6,14 @@
   public virtual EventReceiver
 {
 public:
-  virtual void EventA(void) = 0;
+  virtual void Event(void) = 0;
 };
 
 class MultiEventB:
   public virtual EventReceiver
 {
 public:
-  virtual void EventB(void) = 0;
+  virtual void Event(void) = 0;
 };
 
 class MultiSender:
@@ -24,9 +24,9 @@
 MultipleSenderTest::MultipleSenderTest(void) {}
 
 TEST_F(MultipleSenderTest, VerifyMultiSendA) {
-  m_sender->Fire(&MultiEventA::EventA)();
+  m_sender->Fire(&MultiEventA::Event)();
 }
 
 TEST_F(MultipleSenderTest, VerifyMultiSendB) {
-  m_sender->Fire(&MultiEventB::EventB)();
+  m_sender->Fire(&MultiEventB::Event)();
 }
Test amended to ensure that potential naming collisions do not necessarily affect execution
