public async Task GetAllForCompany_WithValidCompany_WorksCorrectly() { string testUsername = "******"; var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var expectedResult = "Job1"; var model = new Job() { Title = expectedResult, Location = "Test Location", Description = "Random description", EndDate = new DateTime(2019, 1, 1), Company = new Company() { CompanyName = "Test Company", User = new User() { UserName = testUsername } }, Category = new Category() { CategoryType = "NewCategory" }, JobType = new JobType() { Type = "NewType" } }; context.Add(model); context.SaveChanges(); var jobService = new JobService(new EfRepository <Company>(context), new EfRepository <Job>(context), new EfRepository <JobCandidate>(context), new EfRepository <User>(context), new EfRepository <JobSeeker>(context)); var actualResults = (await jobService.GetAllForCompany(testUsername)) .Select(j => j.Title) .SingleOrDefault(); Assert.Equal(expectedResult, actualResults); }
public async Task GetAllForJobSeeker_WithValidJob_WorksCorrectly() { string testUsername = "******"; string expectedResult = "Test Job Title"; var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var jobModel = new Job() { Title = "Test Job Title", Location = "Test Location", Description = "Random description", EndDate = new DateTime(2019, 1, 1), Company = new Company() { CompanyName = "Test Company", User = new User() { UserName = "******" } }, Category = new Category() { CategoryType = "NewCategory" }, JobType = new JobType() { Type = "NewType" }, JobCandidates = new List <JobCandidate>() { new JobCandidate() { JobSeeker = new JobSeeker() { FirstName = "TestFirstName", LastName = "TestLastName", User = new User() { UserName = testUsername } } } } }; context.Add(jobModel); context.SaveChanges(); var jobService = new JobService(new EfRepository <Company>(context), new EfRepository <Job>(context), new EfRepository <JobCandidate>(context), new EfRepository <User>(context), new EfRepository <JobSeeker>(context)); var result = await jobService.GetAllForJobSeeker(testUsername); Assert.Equal(expectedResult, result.Single().Title); }