Beispiel #1
0
        public async Task CreateWorkspaceForUserDoesExistTest()
        {
            var username = "******";

            _userRepo.Setup(repo => repo.UserExists(username)).ReturnsAsync(true);

            var createWorkspaceDto = new CreateWorkspaceDto {
                Name = "myworkspace"
            };
            var user = new User {
                Guid = Guid.NewGuid()
            };

            _userRepo.Setup(repo => repo.GetUserByUsername(username)).ReturnsAsync(user);

            var mappedWorkspace = new Workspace();

            // _mapper.Setup(mapper => mapper.Map<Workspace>(createWorkspaceDto)).Returns(mappedWorkspace);

            var workspaceCreated = await _service.CreateWorkspaceForUser(username, createWorkspaceDto);

            Assert.NotNull(workspaceCreated);
            Assert.IsType <Workspace>(workspaceCreated);
            Assert.Equal(workspaceCreated.OwnerGuid, user.Guid);
            Assert.NotEqual(Guid.Empty, workspaceCreated.Guid);
        }
Beispiel #2
0
        public async Task <ApiResponse> UpdateWorkspace([FromBody] CreateWorkspaceDto workspaceDto)
        {
            var identity = User.Identity;

            if (ModelState.IsValid)
            {
                var workspace = await _workspaceService.CreateWorkspaceForUser(identity.Name, workspaceDto);

                return(new ApiResponse("Workspace updated successfully", workspace, (int)HttpStatusCode.OK));
            }
            else
            {
                throw new ApiException(ModelState.AllErrors());
            }
        }
Beispiel #3
0
        public async Task UpdateWorkSpaceValidModelTest()
        {
            var createWorkspaceDto = new CreateWorkspaceDto();
            var workspace          = new Workspace();

            _workspaceService.Setup(service => service.CreateWorkspaceForUser(_username, createWorkspaceDto)).ReturnsAsync(workspace);

            var response = await _controller.UpdateWorkspace(createWorkspaceDto);

            Assert.NotNull(response);
            Assert.IsType <ApiResponse>(response);
            Assert.Equal("Workspace updated successfully", response.Message);
            Assert.False(response.IsError);
            Assert.Equal((int)HttpStatusCode.OK, response.StatusCode);
            Assert.Equal(workspace, response.Result);
        }
        public async Task <Workspace> CreateWorkspaceForUser(string username, CreateWorkspaceDto workspaceDto)
        {
            var userExists = await _userRepo.UserExists(username);

            if (!userExists)
            {
                return(null);
            }

            var user = await _userRepo.GetUserByUsername(username);

            var newWorkspace = _mapper.Map <Workspace>(workspaceDto);

            newWorkspace.Guid      = Guid.NewGuid();
            newWorkspace.OwnerGuid = user.Guid;

            await _workspaceRepo.CreateOrUpdateWorkspace(newWorkspace);

            return(newWorkspace);
        }