public async Task ProjectService_GetProjectRevisions_InvalidProjectEntity()
        {
            // arrange
            var request = GetProjectRevisionReadListRequest();

            MockProjectRepository.Setup_Select_Returns_InvalidProject();

            // act
            var result = await SystemUnderTest.GetProjectRevisions(request);

            // assert
            AssertResponseStatusAndErrorMessages(result, ResponseStatus.Invalid, UserNotFound);
            AssertReturnType <ProjectRevisionReadListResponse>(result);
            MockProjectRepository.Verify_Select();
        }
        public async Task ProjectService_CloneProject_Invalid_ProjectNotFound()
        {
            // arrange
            var request = GetProjectCloneRequest();

            MockProjectRepository.Setup_Select_Returns_InvalidProject();

            // act
            var result = await SystemUnderTest.CloneProject(request);

            // assert
            AssertResponseStatusAndErrorMessages(result, ResponseStatus.Invalid, ProjectNotFound);
            AssertReturnType <ProjectCloneResponse>(result);
            MockProjectRepository.Verify_Select();
        }
        public async Task ProjectService_GetProjectRevisions_InvalidProjectEntity()
        {
            // arrange
            var request = GetProjectRevisionReadListRequest();

            MockProjectRepository.Setup_Select_Returns_InvalidProject();

            // act
            var result = await SystemUnderTest.GetProjectRevisions(request);

            // assert
            result.ErrorMessages.ShouldNotBeNull();
            result.Status.ShouldBe(ResponseStatus.InvalidBecauseEntityNotFound);
            AssertReturnType <ProjectRevisionReadListResponse>(result);
            MockProjectRepository.Verify_Select();
        }
        public async Task ProjectService_ChangeActivationForProject_Invalid_ProjectNotFound()
        {
            // arrange
            var request = GetProjectChangeActivationRequest();

            MockUserRepository.Setup_SelectById_Returns_OrganizationOneAdminUserOne();
            MockProjectRepository.Setup_Select_Returns_InvalidProject();

            // act
            var result = await SystemUnderTest.ChangeActivationForProject(request);

            // assert
            AssertResponseStatusAndErrorMessages(result, ResponseStatus.Invalid, ProjectNotFound);
            AssertReturnType <ProjectChangeActivationResponse>(result);
            MockUserRepository.Verify_SelectById();
            MockProjectRepository.Verify_Select();
        }
        public async Task ProjectService_ChangeActivationForProject_InvalidProjectEntity()
        {
            // arrange
            var request = GetProjectChangeActivationRequest();

            MockUserRepository.Setup_SelectById_Returns_OrganizationOneAdminUserOne();
            MockProjectRepository.Setup_Select_Returns_InvalidProject();

            // act
            var result = await SystemUnderTest.ChangeActivationForProject(request);

            // assert
            result.ErrorMessages.ShouldNotBeNull();
            result.Status.ShouldBe(ResponseStatus.InvalidBecauseEntityNotFound);
            AssertReturnType <ProjectChangeActivationResponse>(result);
            MockUserRepository.Verify_SelectById();
            MockProjectRepository.Verify_Select();
        }
        public async Task ProjectService_RestoreProject_InvalidProjectEntity()
        {
            // arrange
            var request = GetProjectRestoreRequest();

            MockUserRepository.Setup_SelectById_Returns_OrganizationOneUserOne();
            MockProjectRepository.Setup_Select_Returns_InvalidProject();

            // act
            var result = await SystemUnderTest.RestoreProject(request);

            // assert
            result.ErrorMessages.ShouldNotBeNull();
            result.Status.ShouldBe(ResponseStatus.InvalidBecauseEntityNotFound);
            result.InfoMessages.Any(x => x == "project_not_found").ShouldBeTrue();
            AssertReturnType <ProjectRestoreResponse>(result);
            MockUserRepository.Verify_SelectById();
            MockProjectRepository.Verify_Select();
        }