示例#1
0
        public async Task TutorListByCourseQuery_Ok(string course, long userId, string country, int count)
        {
            var query  = new TutorListByCourseQuery(course, userId, country, count);
            var result = await _fixture.QueryBus.QueryAsync(query, default);

            foreach (var tutorCardDto in result)
            {
                tutorCardDto.Country.Should().BeEquivalentTo(country);
            }
        }
示例#2
0
        public async Task <IEnumerable <TutorCardDto> > GetTutorsAsync([RequiredFromQuery] string course,
                                                                       [ProfileModelBinder(ProfileServiceQuery.Country)] UserProfile profile,
                                                                       int?count,
                                                                       CancellationToken token)
        {
            _userManager.TryGetLongUserId(User, out var userId);
            var query  = new TutorListByCourseQuery(course, userId, profile.Country, count.GetValueOrDefault(10));
            var retVal = await _queryBus.QueryAsync(query, token);

            return(retVal.Select(item =>
            {
                item.Image = _urlBuilder.BuildUserImageEndpoint(item.UserId, item.Image);
                return item;
            }));
        }
示例#3
0
        public async Task <IEnumerable <FeedDto> > GetFeedAsync(GetFeedWithCourseQuery query, CancellationToken token)
        {
            var tutorQuery = new TutorListByCourseQuery(query.Course, query.UserId, query.Country, _pageSize, query.Page);

            return(await _queryBus.QueryAsync(tutorQuery, token));
        }