AsyncMediator.Test.MediatorTests.Queries_ShouldAllowMultipleQueryDefinitionsPerObject C# (CSharp) Method

Queries_ShouldAllowMultipleQueryDefinitionsPerObject() private method

private Queries_ShouldAllowMultipleQueryDefinitionsPerObject ( ) : System.Threading.Tasks.Task
return System.Threading.Tasks.Task
        public async Task Queries_ShouldAllowMultipleQueryDefinitionsPerObject()
        {
            // Arrange
            var handlerFactory = new MessageHandlerRegistry();
            var mediator = new Mediator(handlerFactory.MultiInstanceFactory, handlerFactory.SingleInstanceFactory);
            handlerFactory.AddHandlersForCommandOrQuery<IQuery<SingleIdCriteria, FakeResult>>(new MultipleQueryTypesInOneObject());
            handlerFactory.AddHandlersForCommandOrQuery<IQuery<SingleNameCriteria, FakeResult>>(new MultipleQueryTypesInOneObject());

            // Act
            var resultByName = await mediator.Query<SingleNameCriteria, FakeResult>(new SingleNameCriteria { Name = "Name2" });
            var resultById = await mediator.Query<SingleIdCriteria, FakeResult>(new SingleIdCriteria { Id = 1 });

            // Assert
            Assert.IsTrue(resultByName.Id == 2);
            Assert.IsTrue(resultById.Id == 1);
        }