/// <summary> /// Method for getting empty rooms which satisfied <paramref name="filter"/> /// </summary> /// <param name="filter">search parameters</param> /// <returns>operation result with status code and room collection</returns> public async Task <BaseOperationResult <IEnumerable <Room> > > GetEmptyRoom(RoomFilterParameters filter) { var root = string.Format( RestURl.GetEmptyRoom, filter.From.ToUniversalTime().ToString(this.dateTimeCultureInfo), filter.To.ToUniversalTime().ToString(this.dateTimeCultureInfo), filter.HasPolycom, filter.IsLarge); return(await this.HttpService.Get <IEnumerable <Room> >(root)); }
/// <summary> /// Method search empty rooms related to <paramref name="filter"/> /// </summary> /// <param name="model">Search filter</param> /// <returns>operation result with <see cref="Room"/> collection</returns> public async Task <BaseOperationResult <IEnumerable <Room> > > GetEmptyRoom(SelectModel model) { RoomFilterParameters filter = new RoomFilterParameters() { From = model.Date.Date.Add(model.From.TimeOfDay), To = model.Date.Date.Add(model.To.TimeOfDay), IsLarge = model.IsLarge, HasPolycom = model.HasPolycom }; return(await(this.roomRepository as IRoomRepository)?.GetEmptyRoom(filter)); }
public async Task GetEmptyRoom_With_HasPolycomParameter_Should_Call_Http_Service_Get_With_Correct_URL() { //arrange RoomRepository roomRepository = new RoomRepository(this.httpServiceMock.Object); RoomFilterParameters filterParameters = new RoomFilterParameters() { IsLarge = false, HasPolycom = true, From = new DateTime(2016, 9, 22, 3, 0, 0), To = new DateTime(2016, 9, 22, 5, 0, 0), }; string expectedRoute = string.Format(RestURl.GetEmptyRoom, "22-Sep-16 12:00:00 AM", "22-Sep-16 2:00:00 AM", "True", "False"); //act await roomRepository.GetEmptyRoom(filterParameters); //assert this.httpServiceMock.Verify(m => m.Get <IEnumerable <Room> >(expectedRoute), Times.Once); }
public Task <BaseOperationResult <IEnumerable <Room> > > GetEmptyRoom(RoomFilterParameters filter) { return(Task.FromResult(FakeData.ListRoomResult)); }