public void SetUp()
            {
                _client = new ElasticsearchClient();
                _calls  = new List <ElasticsearchProjectionHandlerCall>();
                var handler1 = new ElasticsearchProjectionHandler(
                    typeof(MatchMessage1),
                    (client, msg, token) =>
                {
                    _calls.Add(new ElasticsearchProjectionHandlerCall(client, msg, token));
                    return(Task.FromResult(false));
                });
                var handler2 = new ElasticsearchProjectionHandler(
                    typeof(MatchMessage2),
                    (client, msg, token) =>
                {
                    _calls.Add(new ElasticsearchProjectionHandlerCall(client, msg, token));
                    return(Task.FromResult(false));
                });
                var handler3 = new ElasticsearchProjectionHandler(
                    typeof(MatchMessage1),
                    (client, msg, token) =>
                {
                    _calls.Add(new ElasticsearchProjectionHandlerCall(client, msg, token));
                    return(Task.FromResult(false));
                });
                var handler4 = new ElasticsearchProjectionHandler(
                    typeof(MatchMessage2),
                    (client, msg, token) =>
                {
                    _calls.Add(new ElasticsearchProjectionHandlerCall(client, msg, token));
                    return(Task.FromResult(false));
                });

                _sut = SutFactory(new[] { handler1, handler2, handler3, handler4 });
            }
        public void ParametersArePreservedAsProperties()
        {
            var message = typeof(object);
            Func <IElasticsearchClient, object, CancellationToken, Task> handler = (client, msg, token) => Task.FromResult(false);

            var sut = new ElasticsearchProjectionHandler(message, handler);

            Assert.That(sut.Message, Is.EqualTo(message));
            Assert.That(sut.Handler, Is.EqualTo(handler));
        }
        public void ConcatHandlerReturnsExpectedResult()
        {
            var handler1 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler2 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler3 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var sut      = new ElasticsearchProjection(new[]
            {
                handler1,
                handler2
            });

            var result = sut.Concat(handler3);

            Assert.That(result.Handlers, Is.EquivalentTo(new[] { handler1, handler2, handler3 }));
        }
        public void ConcatHandlerReturnsExpectedResult()
        {
            var handler1 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler2 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler3 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var sut = new ElasticsearchProjection(new[]
            {
                handler1,
                handler2
            });

            var result = sut.Concat(handler3);

            Assert.That(result.Handlers, Is.EquivalentTo(new[] { handler1, handler2, handler3 }));
        }
        public void ExplicitConversionToElasticsearchProjectionHandlerArray()
        {
            var handler1 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler2 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));

            var handlers = new[]
            {
                handler1,
                handler2
            };

            var sut = new ElasticsearchProjection(handlers);

            var result = (ElasticsearchProjectionHandler[])sut;

            Assert.That(result, Is.EquivalentTo(handlers));
        }
        public void HandlersArePreservedAsProperty()
        {
            var handler1 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler2 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));

            var handlers = new[]
            {
                handler1,
                handler2
            };

            var sut = new ElasticsearchProjection(handlers);

            var result = sut.Handlers;

            Assert.That(result, Is.EquivalentTo(handlers));
        }
        public void DecoratedProjectionHandlersAreCopiedOnConstruction()
        {
            var handler1 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler2 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var projection = new ElasticsearchProjection(new[]
            {
                handler1,
                handler2
            });
            var sut = new ElasticsearchProjectionBuilder(projection);

            var result = sut.Build();

            Assert.That(result.Handlers, Is.EquivalentTo(new[]
            {
                handler1, handler2
            }));
        }
Esempio n. 8
0
        public void DecoratedProjectionHandlersAreCopiedOnConstruction()
        {
            var handler1   = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler2   = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var projection = new ElasticsearchProjection(new[]
            {
                handler1,
                handler2
            });
            var sut = new ElasticsearchProjectionBuilder(projection);

            var result = sut.Build();

            Assert.That(result.Handlers, Is.EquivalentTo(new[]
            {
                handler1, handler2
            }));
        }
 private static AsyncElasticsearchProjector SutFactory(ElasticsearchProjectionHandler[] handlers)
 {
     return new AsyncElasticsearchProjector(handlers);
 }
 public void SetUp()
 {
     _client = new ElasticsearchClient();
     _calls = new List<ElasticsearchProjectionHandlerCall>();
     var handler1 = new ElasticsearchProjectionHandler(
         typeof(MatchMessage1),
         (client, msg, token) =>
         {
             _calls.Add(new ElasticsearchProjectionHandlerCall(client, msg, token));
             return Task.FromResult(false);
         });
     var handler2 = new ElasticsearchProjectionHandler(
         typeof(MatchMessage2),
         (client, msg, token) =>
         {
             _calls.Add(new ElasticsearchProjectionHandlerCall(client, msg, token));
             return Task.FromResult(false);
         });
     var handler3 = new ElasticsearchProjectionHandler(
         typeof(MatchMessage1),
         (client, msg, token) =>
         {
             _calls.Add(new ElasticsearchProjectionHandlerCall(client, msg, token));
             return Task.FromResult(false);
         });
     var handler4 = new ElasticsearchProjectionHandler(
         typeof(MatchMessage2),
         (client, msg, token) =>
         {
             _calls.Add(new ElasticsearchProjectionHandlerCall(client, msg, token));
             return Task.FromResult(false);
         });
     _sut = SutFactory(new[] { handler1, handler2, handler3, handler4 });
 }
        public void ImplicitConversionToElasticsearchProjectionHandlerArray()
        {
            var handler1 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler2 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));

            var handlers = new[]
            {
                handler1,
                handler2
            };

            var sut = new ElasticsearchProjection(handlers);

            ElasticsearchProjectionHandler[] result = sut;

            Assert.That(result, Is.EquivalentTo(handlers));
        }
        public void HandlersArePreservedAsProperty()
        {
            var handler1 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));
            var handler2 = new ElasticsearchProjectionHandler(typeof(object), (client, message, token) => Task.FromResult(false));

            var handlers = new[]
            {
                handler1,
                handler2
            };

            var sut = new ElasticsearchProjection(handlers);

            var result = sut.Handlers;

            Assert.That(result, Is.EquivalentTo(handlers));
        }