public async Task SubscribeUserTest() { var url = "/api/users/subscribe-user"; var client = ServerFactory.CreateHttpClient(); var body = new SubscribeUserRequest <Guid> { FromUserId = Guid.Empty, ToUserId = Guid.Empty }; var result = await client.PostAsync(url, body.GetContent()); Assert.Equal(HttpStatusCode.BadRequest, result.StatusCode); body = new SubscribeUserRequest <Guid> { FromUserId = Guid.NewGuid(), ToUserId = Guid.NewGuid() }; result = await client.PostAsync(url, body.GetContent()); result.EnsureSuccessStatusCode(); var json = await result.Content.ReadAsStringAsync(); var deserialize = JsonConvert.DeserializeObject <bool>(json); Assert.True(deserialize); }
public async Task <UpdateHandlingResult> HandleUpdateAsync(IBot bot, Update update) { SubscribeUserRequest request = new SubscribeUserRequest(update.CallbackQuery.From.Id, update.CallbackQuery.From.FirstName, null); await _mediator.Send(request); return(UpdateHandlingResult.Continue); }
public override async Task <UpdateHandlingResult> HandleCommand(Update update, SubscribeCommandArgs args) { var userIdToSubscribe = update.Message.From.Id; var userFirstName = update.Message.From.FirstName; var replyToMessageId = update.Message.From.Id == update.Message.Chat.Id ? update.Message.MessageId : default; SubscribeUserRequest subscribeUserRequest = new SubscribeUserRequest(userIdToSubscribe, userFirstName, replyToMessageId); await _mediator.Send(subscribeUserRequest); return(UpdateHandlingResult.Continue); }
public async Task <bool> SubscribeUser(SubscribeUserRequest <Guid> request, CancellationToken token) { var value = new SubscribeUserEntity { FromUserId = request.FromUserId, ToUserId = request.ToUserId }; await _context.AddAsync(value, token); await _context.SaveChangesAsync(token); return(true); }
public async Task <IActionResult> SubscribeUser(SubscribeUserRequest <Guid> request, CancellationToken token) { var result = await _userService.SubscribeUser(request, token); return(Ok(result)); }