public void Test() { var mediator = new ConcreteMediator <string>(); var producer1 = new ConcreteProducer <string>(mediator); var producer2 = new ConcreteProducer <string>(mediator); var consumer1 = new ConcreteConsumer <string>(); var consumer2 = new ConcreteConsumer <string>(); var consumer3 = new ConcreteConsumer <string>(); mediator.Register(consumer1); mediator.Register(consumer2); mediator.Register(consumer3); Assert.That(consumer1.Notification, Is.Null); Assert.That(consumer2.Notification, Is.Null); Assert.That(consumer3.Notification, Is.Null); producer1.Publish("producer 1"); Assert.That(consumer1.Notification, Is.EqualTo("producer 1")); Assert.That(consumer2.Notification, Is.EqualTo("producer 1")); Assert.That(consumer3.Notification, Is.EqualTo("producer 1")); producer2.Publish("producer 2"); Assert.That(consumer1.Notification, Is.EqualTo("producer 2")); Assert.That(consumer2.Notification, Is.EqualTo("producer 2")); Assert.That(consumer3.Notification, Is.EqualTo("producer 2")); }
public void Test() { var mediator = new ConcreteMediator<string>(); var producer1 = new ConcreteProducer<string>(mediator); var producer2 = new ConcreteProducer<string>(mediator); var consumer1 = new ConcreteConsumer<string>(); var consumer2 = new ConcreteConsumer<string>(); var consumer3 = new ConcreteConsumer<string>(); mediator.Register(consumer1); mediator.Register(consumer2); mediator.Register(consumer3); Assert.That(consumer1.Notification, Is.Null); Assert.That(consumer2.Notification, Is.Null); Assert.That(consumer3.Notification, Is.Null); producer1.Publish("producer 1"); Assert.That(consumer1.Notification, Is.EqualTo("producer 1")); Assert.That(consumer2.Notification, Is.EqualTo("producer 1")); Assert.That(consumer3.Notification, Is.EqualTo("producer 1")); producer2.Publish("producer 2"); Assert.That(consumer1.Notification, Is.EqualTo("producer 2")); Assert.That(consumer2.Notification, Is.EqualTo("producer 2")); Assert.That(consumer3.Notification, Is.EqualTo("producer 2")); }