Exemplo n.º 1
0
        public void AddReceiver_WithExistingReceiverForAddress_ThrowsInvalidOperationException()
        {
            // Arrange
            var address = TcpAddress.Wildcard(5555);
            var cache   = new ReceiverCache(monitorCache);

            cache.AddFactory(receiverFactory);
            cache.AddReceiver <IReceiver>(address);

            // Act
            TestDelegate addReceiver = () => cache.AddReceiver <IReceiver>(address);

            // Assert
            Assert.That(addReceiver, Throws.InvalidOperationException);
        }
Exemplo n.º 2
0
        public void AddReceiver_WithNoMatchingFactory_ThrowsMissingFactoryException()
        {
            // Arrange
            var cache = new ReceiverCache(monitorCache);

            // Act
            TestDelegate addReceiver = () => cache.AddReceiver <IReceiver>(address);

            // Assert
            Assert.That(addReceiver, Throws.TypeOf <MissingFactoryException>());
        }
Exemplo n.º 3
0
        public void AddReceiver_WithNullAddress_ThrowsArgumentNullException()
        {
            // Arrange
            var cache = new ReceiverCache(monitorCache);

            // Act
            TestDelegate addReceiver = () => cache.AddReceiver <IReceiver>(null);

            // Assert
            Assert.That(addReceiver, Throws.ArgumentNullException);
        }
Exemplo n.º 4
0
        public void AddReceiver_WithFactory_CallsFactoryCreateReceiver()
        {
            // Arrange
            var cache = new ReceiverCache(monitorCache);

            cache.AddFactory(receiverFactory);

            // Act
            cache.AddReceiver <IReceiver>(address);

            // Assert
            mockReceiverFactory.Verify(m => m.CreateReceiver(It.IsIn(address)), Times.Once);
        }
Exemplo n.º 5
0
 public Builder WithReceiver <TReceiver>(IAddress address)
     where TReceiver : IReceiver
 {
     ReceiverCache.AddReceiver <TReceiver>(address);
     return(this);
 }