public void GetLongestRoadsShouldReturnLongestRoads() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: "GetLongestRoads_Roads_IndexDatabase") .Options; var dbContext = new ApplicationDbContext(options); var roadsService = new RoadsIndexService(dbContext); var roads = new List <Road> { new Road { RoadName = "Road1", RoadLength = 60 }, new Road { RoadName = "Road2", RoadLength = 80 }, new Road { RoadName = "Road3", RoadLength = 40 } }; dbContext.Roads.AddRange(roads); dbContext.SaveChanges(); var result = roadsService.GetLongestRoads(); Assert.Equal(roads.OrderByDescending(x => x.RoadLength), result); }
void GetLatestRoadShouldReturnRoadsOrderedByDateDescending() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: "GetLatestRoads_Roads_IndexDatabase") .Options; var dbContext = new ApplicationDbContext(options); var roadsService = new RoadsIndexService(dbContext); var date = DateTime.UtcNow; var dateTwo = "12-12-1999 1:12:00AM"; var parsedDateTwo = DateTime.Parse(dateTwo); var roads = new List <Road> { new Road { RoadName = "Road1", PostedOn = date }, new Road { RoadName = "Road2", PostedOn = date.AddDays(2) }, new Road { RoadName = "Road3", PostedOn = parsedDateTwo } }; dbContext.Roads.AddRange(roads); dbContext.SaveChanges(); var result = roadsService.GetLatestRoads(); Assert.Equal(roads.OrderByDescending(x => x.PostedOn), result); }
public void GetRoadsShouldReturnAllRoads() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: "GetRoads_Roads_IndexDatabase") .Options; var dbContext = new ApplicationDbContext(options); var roadsService = new RoadsIndexService(dbContext); var roads = new List <Road> { new Road { RoadName = "Road1" }, new Road { RoadName = "Road2" }, new Road { RoadName = "Road3" } }; dbContext.Roads.AddRange(roads); dbContext.SaveChanges(); var returnCollection = roadsService.GetAllRoads(); Assert.Equal(roads.Count, returnCollection.Count); }
public void GetCurrentUserRoadsByIdShouldReturnCurrentUsersRoads() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: "GetCurrentUserRoads_Roads_IndexDatabase") .Options; var dbContext = new ApplicationDbContext(options); var roadsService = new RoadsIndexService(dbContext); var user = new User { UserName = "******", Roads = new List <Road> { new Road(), new Road(), new Road(), } }; dbContext.Users.Add(user); dbContext.SaveChanges(); var result = roadsService.GetCurrentUserRoadsById(user.Id); Assert.Equal(user.Roads, result); }
public void GetTopRoadsShouldReturnRoadsWithMostAverateRating() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: "GetTopRoads_Roads_IndexDatabase") .Options; var dbContext = new ApplicationDbContext(options); var roadsService = new RoadsIndexService(dbContext); var commentOne = new Comment { Content = "Loremipsium", Rating = 5 }; var commentTwo = new Comment { Content = "Loremipsium", Rating = 3 }; var commentThree = new Comment { Content = "Loremipsium", Rating = 4 }; dbContext.Comments.AddRange(commentOne, commentTwo, commentThree); dbContext.SaveChanges(); var roads = new List <Road> { new Road { RoadName = "Road1", Comments = new List <Comment>() { commentOne } }, new Road { RoadName = "Road2", Comments = new List <Comment>() { commentTwo } }, new Road { RoadName = "Road3", Comments = new List <Comment>() { commentThree } } }; dbContext.Roads.AddRange(roads); dbContext.SaveChanges(); var result = roadsService.GetTopRoads(); Assert.Equal(roads.OrderByDescending(x => x.AverageRating), result); }