Beispiel #1
0
        public async Task <IActionResult> Create([FromBody] UserCommands.Create createUser)
        {
            var user = new User(_idProvider.NextUser(), createUser.Username);

            await _userRepository.InsertAsync(user);

            return(CreatedAtRoute(RouteNames.GetUser, new { id = user.Id }, user));
        }
        public async Task Create_Always_ShouldCreateUser()
        {
            var key    = nameof(User);
            var create = new UserCommands.Create {
                Username = "******"
            };

            var response = await _client.PostAsJsonAsync(CreateUserEndpoint, create);

            var users = _factory.FakeUsersCache.Get <List <User> >(key);

            Assert.Contains(users, user => user.Username.Equals("fakeusername"));
        }
Beispiel #3
0
        public async Task Create_Always_ShouldReturnCreatedAtRoute()
        {
            var createUser = new UserCommands.Create();
            var nextId     = 1;
            var controller = GetUsersController();

            A.CallTo(() => _uniqueIdProvider.NextUser()).Returns(nextId);

            var result = await controller.Create(createUser);

            Assert.NotNull(result);
            var createdAtRoute = Assert.IsType <CreatedAtRouteResult>(result);
            var user           = Assert.IsType <User>(createdAtRoute.Value);

            Assert.Equal(nextId, user.Id);
        }