public async Task GetByIdAsync_WorksCorrectly() { string expectedResult = "MajorTest"; var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var model = new Education() { Major = expectedResult, Institute = "InstituteTest", From = 2000, To = 2001, Resume = new Resume() }; await context.AddAsync(model); context.SaveChanges(); var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var result = await educationsService.GetByIdAsync(model.Id); Assert.Equal(expectedResult, result.Major); }
public async Task AddEducation_ToNonExistingResume_ReturnsFalse() { var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var model = new Resume() { JobSeeker = new JobSeeker() { FirstName = "JobSeekerName1", LastName = "JobSeekerName2", User = new User() { UserName = "******" } } }; var serviceModel = new EducationServiceModel(); var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var result = await educationsService.AddEducation(model.Id, serviceModel); Assert.False(result); }
public async Task RemoveExistingEducation_ReturnsTrue() { var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var model = new Education() { Major = "MajorTest", Institute = "InstituteTest", From = 2000, To = 2001, }; await context.AddAsync(model); context.SaveChanges(); var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var result = await educationsService.RemoveEducationById(model.Id); Assert.True(result); var dbModels = await context.EducationsHistory.AnyAsync(); Assert.False(dbModels); }
public async Task GetAllForResume_WithData_WorksCorrectly() { var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var expectedResults = new[] { "Major1", "Major2", "Major3" } .OrderBy(c => c) .ToArray(); var model = new Resume() { EducationHistory = new List <Education>() { new Education() { Major = expectedResults[0], Institute = "InstituteTest", From = 2000, To = 2001, }, new Education() { Major = expectedResults[1], Institute = "InstituteTest", From = 2000, To = 2001, }, new Education() { Major = expectedResults[2], Institute = "InstituteTest", From = 2000, To = 2001, }, } }; await context.AddAsync(model); context.SaveChanges(); var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var actualResults = (await educationsService.GetAllForResume(model.Id)) .Select(e => e.Major) .OrderBy(e => e) .ToArray(); Assert.Equal(expectedResults, actualResults); }
public async Task GetAllForResume_WithNoResume_ReturnsNull() { var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var model = new Resume(); var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var result = await educationsService.GetAllForResume(model.Id); Assert.Null(result); }
public async Task UpdateAsync_WithNonExistentEducation_ReturnsFalse() { var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var serviceModel = new EducationServiceModel() { Major = "MajorTest", Institute = "InstituteTest", From = 2000, To = 2001, }; var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var result = await educationsService.UpdateAsync(serviceModel); Assert.False(result); }
public async Task UpdateAsync_WithValidData_ReturnsTrue() { string expectedResult = "NewMajor"; var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var model = new Education() { Major = "MajorTest", Institute = "InstituteTest", From = 2000, To = 2001, }; await context.AddAsync(model); context.SaveChanges(); var serviceModel = new EducationServiceModel() { Id = model.Id, Major = expectedResult, Institute = "InstituteTest", From = 2000, To = 2001, }; var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var result = await educationsService.UpdateAsync(serviceModel); Assert.True(result); var actualResult = (await context.EducationsHistory.SingleAsync(e => e.Id == model.Id)).Major; Assert.Equal(expectedResult, actualResult); }
public async Task AddEducation_WithValidData_ToExistingResume_WorksCorrectly() { var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var model = new Resume() { JobSeeker = new JobSeeker() { FirstName = "JobSeekerName1", LastName = "JobSeekerName2", User = new User() { UserName = "******" } } }; await context.AddAsync(model); context.SaveChanges(); var serviceModel = new EducationServiceModel() { Major = "MajorTest", Institute = "InstituteTest", From = 2000, To = 2001, }; var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var result = await educationsService.AddEducation(model.Id, serviceModel); Assert.True(result); }
public async Task GetByIdAsync_WithNoExistingEducation_ReturnsNull() { string expectedResult = "MajorTest"; var context = new JobFinderDbContext(new DbContextOptionsBuilder <JobFinderDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); var model = new Education() { Major = expectedResult, Institute = "InstituteTest", From = 2000, To = 2001, Resume = new Resume() }; var educationsService = new EducationsService(new EfRepository <Education>(context), new EfRepository <Resume>(context)); var result = await educationsService.GetByIdAsync(model.Id); Assert.Null(result); }