Exemple #1
0
        public void HandleAsync_Return_Task_Of_IEnumerable_Of_Room()
        {
            //Arrange
            var type         = typeof(Task <IEnumerable <Transfer.Objects.Room> >);
            var handler      = Handler();
            var providerMock = new Mock <IQueryDispatcher>();
            var query        = new RoomsByAccommodationIdAndLanguageIdQuery(providerMock.Object);

            //Act
            var result = handler.HandleAsync(query);

            //Assert
            Assert.IsInstanceOf(type, result);
        }
Exemple #2
0
        protected IQueryable <Transfer.Objects.Room> ProjectionToRooms(IQueryable <Room> typeOfRooms, RoomsByAccommodationIdAndLanguageIdQuery byAccommodationIdAndLanguageIdQuery)
        {
            var localizedTypesOfRooms = Source.SelectMany(p => p.LocalizedRooms)
                                        .Where(p => p.LanguageId == byAccommodationIdAndLanguageIdQuery.LanguageId);

            localizedTypesOfRooms = localizedTypesOfRooms.Include(p => p.Type)
                                    .Where(p => p.Type.RealEstateId == byAccommodationIdAndLanguageIdQuery.AccommodationId);

            return(ProjectTo <Transfer.Objects.Room>(localizedTypesOfRooms));
        }
Exemple #3
0
        public override async Task <IEnumerable <Transfer.Objects.Room> > HandleAsync(RoomsByAccommodationIdAndLanguageIdQuery query, CancellationToken cancellationToken)
        {
            var projection = ProjectionToRooms(Source, query);

            return(await projection.ToArrayAsync(cancellationToken));
        }