Esempio n. 1
0
        public async Task GetProjectTaskEntriesByDate_AddedTimeEntryForGivenDate_ReturnNonEmptyResult()
        {
            this._context.Users.Add(new User("UserTest", "User2", "User2", "Admin", "jkjkjk")
            {
                Id = _userContext.UserId
            });
            this._context.Clients.Add(new Client("testclient1")
            {
                Id = 1
            });
            this._context.Projects.Add(new Project("testProject1", 1, "examplecode")
            {
                Id = 1
            });
            this._context.ProjectTasks.Add(new ProjectTask("testTask1", 1, true)
            {
                Id = 1
            });
            _context.SaveChanges();
            var newEntry = new ProjectTaskEntry(_userContext.UserId, 1, 50, new DateTime(2019, 2, 10), "Nasa nota")
            {
                Id = 50
            };

            await _repository.AddTimeEntry(newEntry);

            var result = await _repository.GetProjectTaskEntriesForCurrentUserByDate(2019, 2, 10);

            result.Should().NotBeEmpty();
        }
Esempio n. 2
0
        public async Task <int> AddProject(Project project)
        {
            var proj = await _context.Projects.AddAsync(project);

            _context.SaveChanges();

            return(proj.Entity.Id);
        }
Esempio n. 3
0
 public async void InsertUserProjects(int projectID, ICollection <int> userIDs)
 {
     foreach (var id in userIDs)
     {
         await _context.UsersProjects.AddAsync(new UserProject(id, projectID));
     }
     _context.SaveChanges();
 }
Esempio n. 4
0
        public async Task <int> StoreNewClient(Client client)
        {
            var cl = await _context.Clients.AddAsync(client);

            _context.SaveChanges();

            return(cl.Entity.Id);
        }
Esempio n. 5
0
        public async Task AddClients_AddOneClient_AddOneClientToDBAndReturnOneRecorddMore()
        {
            _client = new IntegrationWebApplicationFactory <Startup>().WithWebHostBuilder(builder =>
            {
                builder.ConfigureTestServices(services =>
                {
                    var sp            = services.BuildServiceProvider();
                    _dbContext        = sp.GetRequiredService <TaskterDbContext>();
                    _clientRepository = sp.GetRequiredService <IClientRepository>();
                });
            }
                                                                                          ).CreateClient();

            var CurrentClientList = await _clientRepository.GetAllClients() as ICollection;

            var CurrentClientListLength = CurrentClientList.Count;

            _dbContext.Clients.Add(new Client("TestClient"));
            _dbContext.SaveChanges();
            var UpdatedClientList = await _clientRepository.GetAllClients() as ICollection;

            UpdatedClientList.Should().HaveCountGreaterThan(CurrentClientListLength);
        }
Esempio n. 6
0
        public void GetAllProjectsForUser_AssignTwoProjectsToUserWhoseIdIs4_ReturnsAListOfTwoAssignedProjectsForUserWithId4()
        {
            _context.Clients.Add(new Client("TestClient1")
            {
                Id = 5
            });
            _context.Users.Add(new User("test1", "test1", "test1", "test1", "test1")
            {
                Id = 3
            });
            _context.Users.Add(new User("test2", "test2", "test2", "test2", "test2")
            {
                Id = 4
            });

            IEnumerable <Project> seedProjectList = new List <Project>()
            {
                new Project("testProject1", 5, "testcode")
                {
                    Id = 10
                },
                new Project("testProject2", 5, "testcode")
                {
                    Id = 11
                }
            };

            _context.Projects.Add(seedProjectList.ToArray()[0]);
            _context.Projects.Add(seedProjectList.ToArray()[1]);

            _context.UsersProjects.Add(new UserProject(3, 10));
            _context.UsersProjects.Add(new UserProject(4, 10));
            _context.UsersProjects.Add(new UserProject(4, 11));

            _context.SaveChanges();

            var result = _repository.GetAllProjectsForCurrentUser();

            result.Count().Should().Be(2);
            result.Should().BeEquivalentTo(seedProjectList);
        }
Esempio n. 7
0
        public async Task GetProjectTaskEntriesByDate_AddedTwoEntries_ReturnsAListOfTwoAddedEntries()
        {
            _client = new IntegrationWebApplicationFactory <Startup>().WithWebHostBuilder(builder =>
            {
                builder.ConfigureTestServices(services =>
                {
                    var serviceDesc = services.FirstOrDefault(desc => desc.ServiceType == typeof(ICurrentUserContext));
                    services.Remove(serviceDesc);
                    _currentUserContext = new CurrentUserContext()
                    {
                        UserId = 3
                    };
                    services.AddTransient(x => _currentUserContext);
                    var sp     = services.BuildServiceProvider();
                    _dbContext = sp.GetRequiredService <TaskterDbContext>();
                });
            }).CreateClient();

            _dbContext.Users.Add(new User("test1", "test 1", "test lastName", "admin", "http://google.com")
            {
                Id = _currentUserContext.UserId
            });
            var clientSeed = new Client("testClient")
            {
                Id = 20
            };

            _dbContext.Clients.Add(clientSeed);
            var seedProjectsList = new List <Project>()
            {
                new Project("test project 1", 20, null)
                {
                    Id = 10, Client = clientSeed
                },
                new Project("test project 2", 20, null)
                {
                    Id = 11, Client = clientSeed
                }
            };

            _dbContext.AddRange(seedProjectsList);
            var seedProjectsTaskList = new List <ProjectTask>()
            {
                new ProjectTask("testTask1", 10, false)
                {
                    Id = 20, Project = seedProjectsList[0]
                },
                new ProjectTask("testTask2", 10, false)
                {
                    Id = 21, Project = seedProjectsList[1]
                }
            };
            var seedProjectsTaskEntryList = new List <ProjectTaskEntry>()
            {
                new ProjectTaskEntry(3, 20, 30, DateTime.Now, "Notee")
                {
                    Id = 10, ProjectTask = seedProjectsTaskList[0]
                },
                new ProjectTaskEntry(3, 21, 50, DateTime.Now, "Notee")
                {
                    Id = 11, ProjectTask = seedProjectsTaskList[1]
                }
            };

            _dbContext.ProjectTaskEntries.AddRange(seedProjectsTaskEntryList);
            _dbContext.SaveChanges();

            var result = await _client.GetProjectTaskEntriesByDate(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);

            var seedsDto = seedProjectsTaskEntryList.ToDTOList();

            result.Should().BeEquivalentTo(seedsDto);
        }
Esempio n. 8
0
        public async Task GetProjectsForCurrentUser_AssignedTwoProjects_ReturnsAListOfTwoAssignedProjects()
        {
            _client = new IntegrationWebApplicationFactory <Startup>().WithWebHostBuilder(builder =>
            {
                builder.ConfigureTestServices(services =>
                {
                    var serviceDesc = services.FirstOrDefault(desc => desc.ServiceType == typeof(ICurrentUserContext));
                    services.Remove(serviceDesc);
                    _currentUserContext = new CurrentUserContext()
                    {
                        UserId = 3
                    };
                    services.AddTransient <ICurrentUserContext>(x => _currentUserContext);
                    var sp     = services.BuildServiceProvider();
                    _dbContext = sp.GetRequiredService <TaskterDbContext>();
                });
            }).CreateClient();

            _dbContext.Users.Add(new User("test1", "test 1", "test lastName", "admin", "http://google.com")
            {
                Id = _currentUserContext.UserId
            });
            var clientSeed = new Client("testClient")
            {
                Id = 20
            };

            _dbContext.Clients.Add(clientSeed);
            var seedProjectsList = new List <Project>()
            {
                new Project("test project 1", 20, null)
                {
                    Id = 10, Client = clientSeed
                },
                new Project("test project 2", 20, null)
                {
                    Id = 11, Client = clientSeed
                }
            };

            var seedProjectsTaskList = new List <ProjectTask>()
            {
                new ProjectTask("testTask1", 10, false)
                {
                    Id = 20
                },
                new ProjectTask("testTask2", 10, false)
                {
                    Id = 21
                },
                new ProjectTask("testTask1", 11, false)
                {
                    Id = 22
                },
                new ProjectTask("testTask2", 11, false)
                {
                    Id = 23
                }
            };

            _dbContext.Projects.AddRange(seedProjectsList);
            _dbContext.ProjectTasks.AddRange(seedProjectsTaskList);
            _dbContext.UsersProjects.Add(new UserProject(3, 10));
            _dbContext.UsersProjects.Add(new UserProject(3, 11));
            _dbContext.SaveChanges();

            var result = await _client.GetProjectsForCurrentUser();

            var seedsDto = seedProjectsList.ToDTOList();

            result.Should().BeEquivalentTo(seedsDto);
        }
Esempio n. 9
0
        public async Task AddProjectTasks(List <ProjectTask> tasks)
        {
            await _context.ProjectTasks.AddRangeAsync(tasks);

            _context.SaveChanges();
        }
Esempio n. 10
0
 public void UpdateTaskEntry(ProjectTaskEntry projectTaskEntry)
 {
     _context.SaveChanges();
 }