Exemplo n.º 1
0
        public async Task ToDictionary_ShouldBeOk()
        {
            // arrange
            await using InWordsDataContext context = InWordsDataContextFactory.Create();
            await CreateTestContext(context);

            WordSetWordsRequest requestData = new WordSetWordsRequest()
            {
                WordSetId = context.Games.First().GameId
            };
            var request = new AuthReq <WordSetWordsRequest, Empty>(requestData)
            {
                UserId = context.Users.First().UserId
            };

            context.UserWordPairs.Add(new UserWordPair()
            {
                UserId      = context.Users.First().UserId,
                ForeignWord = "test4",
                NativeWord  = "тест4"
            });
            context.SaveChanges();
            // act

            var mock = new Mock <IRequestHandler <AuthReq <AddWordsRequest, AddWordsReply>, AddWordsReply> >();

            mock.Setup(a => a.Handle(It.Is(IsGameOne()), It.IsAny <CancellationToken>()));

            var reply = await new ToDictionaryHandler(context, mock.Object).Handle(request);

            // assert
            mock.Verify(a => a.Handle(It.Is(IsGameOne()), It.IsAny <CancellationToken>()), Times.Once());
        }
Exemplo n.º 2
0
        public async Task GetWordsAsyncUserHasOne()
        {
            // arrange
            await using InWordsDataContext context = InWordsDataContextFactory.Create();
            await CreateTestContext(context);

            WordSetWordsRequest requestData = new WordSetWordsRequest()
            {
                WordSetId = context.Games.First().GameId
            };
            var request = new AuthReq <WordSetWordsRequest, WordSetWordsReply>(requestData)
            {
                UserId = context.Users.First().UserId
            };

            context.UserWordPairs.Add(new UserWordPair()
            {
                UserId      = context.Users.First().UserId,
                ForeignWord = "test4",
                NativeWord  = "тест4"
            });
            context.SaveChanges();
            // act
            var reply = await new GetMarkedWordsHandler(context).Handle(request);

            // assert
            Assert.Single(reply.Words.Where(d => d.HasAdded.Equals(true)));
            Assert.Single(reply.Words.Where(d => d.HasAdded.Equals(false)));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Register(WordSetWordsRequest request)
        {
            var requestObject = new AuthorizedRequestObject <WordSetWordsRequest, WordSetWordsReply>(request)
            {
                UserId = User.GetUserId()
            };
            WordSetWordsReply reply = await mediator.Send(requestObject).ConfigureAwait(false);

            return(Ok(reply));
        }
Exemplo n.º 4
0
        public override async Task <WordSetWordsReply> GetWordsList(WordSetWordsRequest request, ServerCallContext context)
        {
            var requestObject = new AuthorizedRequestObject <WordSetWordsRequest, WordSetWordsReply>(request)
            {
                UserId = context
                         .GetHttpContext()
                         .User.GetUserId()
            };
            WordSetWordsReply reply = await mediator.Send(requestObject).ConfigureAwait(false);

            return(reply);
        }
Exemplo n.º 5
0
        public async Task GetWordsAsync()
        {
            // arrange
            await using InWordsDataContext context = InWordsDataContextFactory.Create();
            await CreateTestContext(context);

            WordSetWordsRequest requestData = new WordSetWordsRequest()
            {
                WordSetId = context.Games.First().GameId
            };
            var request = new AuthReq <WordSetWordsRequest, WordSetWordsReply>(requestData)
            {
                UserId = context.Users.First().UserId
            };

            // act
            var reply = await new GetMarkedWordsHandler(context).Handle(request);

            // assert
            Assert.Equal(2, reply.Words.Count);
        }
Exemplo n.º 6
0
 public async Task <IActionResult> ToDictionary(WordSetWordsRequest request)
 => await mediator
 .AuthorizeHandlerActionResult <WordSetWordsRequest, Empty>(request, User)
 .ConfigureAwait(false);
Exemplo n.º 7
0
 public async Task <IActionResult> Register(WordSetWordsRequest request)
 => await mediator
 .AuthorizeHandlerActionResult <WordSetWordsRequest, WordSetWordsReply>(request, User)
 .ConfigureAwait(false);