Exemple #1
0
        public async Task <bool> ChangeUserName()
        {
            var model         = new ChangeUserNameCommand(1314520, "wawa0210");
            var commandResult = await _mediator.Send(model);

            return(commandResult);
        }
Exemple #2
0
        private async Task ExecuteMethodReturnsUserIsNull()
        {
            //Arrange
            var mocks = GetMocks();
            var users = GetUsers().AsQueryable().BuildMock();

            SetSettingsInDb(mocks.userMock, users);
            mocks.dbMock.Setup(m => m.Users).Returns(mocks.userMock.Object);

            var changeUserName = new ChangeUserNameCommand(mocks.dbMock.Object);
            var message        = new Message()
            {
                Chat = new Chat()
                {
                    Id = 2
                },
                Text = "/changeUserName@Test"
            };

            var client = new TelegramBotClient(AppConfig.Token);

            //Act
            var result = await changeUserName.Execute(message, client);

            //Assert
            Assert.NotNull(result);
            Assert.False(result?.isSuccessed);
            Assert.Equal("User is null", result?.Message);
        }
Exemple #3
0
        public async Task <IActionResult> ChangeUserName([FromBody] ChangeUserNameCommand request)
        {
            if (request != null)
            {
                var currentUser = await this.currentUserProvider.GetCurrentUserAsync();

                request.UserId = currentUser.Id;
            }
            else
            {
                return(this.BadRequest());
            }

            return(this.Ok(await this.Mediator.Send(request)));
        }
Exemple #4
0
        private void ContaintMethodReturnsTrue()
        {
            //Arrange
            var dbMock         = new Mock <TelegramBotContext>();
            var changeUserName = new ChangeUserNameCommand(dbMock.Object);
            var message        = new Message()
            {
                Text = "/changeUserName"
            };

            //Act
            var result = changeUserName.IsContains(message);

            //Assert
            Assert.True(result);
        }
Exemple #5
0
        private void ContaintMethodReturnsFalse()
        {
            //Arrange
            var dbMock         = new Mock <TelegramBotContext>();
            var changeUserName = new ChangeUserNameCommand(dbMock.Object);
            var message        = new Message()
            {
                Text = Guid.NewGuid().ToString()
            };

            //Act
            var result = changeUserName.IsContains(message);

            //Assert
            Assert.False(result);
        }
        public async Task Handle(ChangeUserNameCommand command)
        {
            try
            {
                var user = await Repository.GetByKeyAsync<Domain.Models.User>(command.UserId);
                user.ChangeName(command.Name);

                await Repository.SaveChangesAsync();

                var @event = new UserNameChangedEvent(command.UserId, command.Name);
                EventBus.RaiseEvent(@event);
            }
            catch (Exception ex)
            {
                var @event = new UserNameNotChangedEvent(command.UserId, command.Name, ex.Message);
                EventBus.RaiseEvent(@event);

                throw;
            }
        }